[page:Object3D] →

[name]

مستوى التفاصيل - عرض الشبكات بمزيد أو أقل من الهندسة بناءً على المسافة من الكاميرا.

كل مستوى مرتبط بكائن، ويمكن تبديل التصيير بينهم على المسافات المحددة. عادةً ما تقوم بإنشاء، قل، ثلاث شبكات، واحدة للبعيد (تفاصيل منخفضة)، واحدة للمدى المتوسط ​​(تفاصيل متوسطة) وواحد للقريب (تفاصيل عالية).

مثال للكود

const lod = new THREE.LOD(); // إنشاء كرات مع 3 مستويات من التفاصيل وإنشاء مستويات LOD جديدة لهم for( let i = 0; i < 3; i++ ) { const geometry = new THREE.IcosahedronGeometry( 10, 3 - i ); const mesh = new THREE.Mesh( geometry, material ); lod.addLevel( mesh, i * 75 ); } scene.add( lod );

أمثلة (Examples)

[example:webgl_lod webgl / lod ]

المنشئ (Constructor)

[name]( )

إنشاء [name] جديد.

الخصائص (Properties)

انظر إلى الفئة الأساسية [page:Object3D] للحصول على الخصائص المشتركة.

[property:Boolean autoUpdate]

ما إذا كان يتم تحديث كائن LOD تلقائيًا من قبل المُصور في كل إطار أم لا. إذا تم تعيينه إلى false، يجب عليك استدعاء [page:LOD.update]() في حلقة التصيير بنفسك. الافتراضي هو true.

[property:Boolean isLOD]

علامة للقراءة فقط للتحقق مما إذا كان كائن معين هو من نوع [name].

[property:Array levels]

مصفوفة من كائنات [page:Object level]

كل مستوى هو كائن يحتوي على الخصائص التالية:
[page:Object3D object] - الـ [page:Object3D] المراد عرضه في هذا المستوى.
[page:Float distance] - المسافة التي يتم عرض هذا المستوى من التفاصيل فيها.
[page:Float hysteresis] - الحد الذي يستخدم لتجنب الوميض عند حدود LOD، كجزء من المسافة.

الطرق (Methods)

انظر إلى الفئة الأساسية [page:Object3D] للحصول على الطرق المشتركة.

[method:this addLevel]( [param:Object3D object], [param:Float distance], [param:Float hysteresis] )

[page:Object3D object] - الـ [page:Object3D] المراد عرضه في هذا المستوى.
[page:Float distance] - المسافة التي يتم عرض هذا المستوى من التفاصيل فيها. الافتراضي 0.0.
[page:Float hysteresis] - الحد الذي يستخدم لتجنب الوميض عند حدود LOD، كجزء من المسافة. الافتراضي 0.0.

إضافة شبكة ستعرض عند مسافة معينة وأكبر. عادةً ما تكون المسافة أبعد، كلما كان التفصيل أقل في الشبكة.

[method:Integer getCurrentLevel]()

الحصول على مستوى LOD النشط حاليًا. كفهرس لمصفوفة المستويات.

[method:Object3D getObjectForDistance]( [param:Float distance] )

الحصول على مرجع إلى أول [page:Object3D] (شبكة) أكبر من [page:Float distance].

[method:undefined raycast]( [param:Raycaster raycaster], [param:Array intersects] )

الحصول على تقاطعات بين [page:Ray] ملقى وهذا LOD. سيتم استدعاء هذه الطريقة بواسطة [page:Raycaster.intersectObject].

[method:Object toJSON]( meta )

إنشاء بنية JSON بتفاصيل هذا كائن LOD.

[method:undefined update]( [param:Camera camera] )

تعيين رؤية كل كائن [page:Object3D object] في [page:levels level] بناءً على المسافة من [page:Camera camera].

المصدر (Source)

[link:https://github.com/mrdoob/three.js/blob/master/src/[path].js src/[path].js]