Three.js: كيف تجعل القوام يبدو حادًا على شاشة شبكية العين؟

تم إنشاؤها على ٢٤ أكتوبر ٢٠١٢  ·  16تعليقات  ·  مصدر: mrdoob/three.js

لذلك قمت للتو بتحديث الكمبيوتر المحمول الخاص بي إلى جهاز ماك بوك بشاشة شبكية العين وعلى الرغم من أنني أستخدم مواد عالية الدقة مع التكرار ، فإنها تبدو ضبابية للغاية.

لذا أتساءل ما الذي يجب علي فعله لحل هذه المشكلة؟

Question

التعليق الأكثر فائدة

مجرد ترك تعليق هنا لأي شخص آخر يجد هذا ، لأنني كدت أن أغضب أثناء محاولتي العثور على إجابة وواصلت Google إحضار لي هنا: لقد واجهت نفس المشكلة بالضبط ولكن مشكلتي كانت حلاً بسيطًا للغاية ، كان ببساطة تعيين devicePixelRatio في العارض (r72):

renderer.setPixelRatio(window.devicePixelRatio ? window.devicePixelRatio : 1);

_ من الجدير بالذكر أن تعيين devicePixelRatio عند إنشاء الكائن لا يعمل. ربما خطأ؟ _

ال 16 كومينتر

ربما يكون تباين الخواص هو ما تبحث عنه.
http://mrdoob.github.com/three.js/examples/webgl_materials_texture_anisotropy.html

حسنًا ، لقد أصلح هذا مشكلتي مع تكرار القوام ، thx :) ومع ذلك لم ينجح ذلك مع القوام غير المتكرر ، فهل لديك فكرة عن كيفية إصلاح ذلك؟

ربما يحتاجون إلى قوة من نسيجين؟

حسنًا ، لقد حاولت زيادة دقة القوام ولكني لا أرى تحسنًا. دون معرفة كيفية التعامل مع الكثافة المتزايدة ، أعتقد أن النسيج يتم تصغيره إلى حجم البكسل المناسب للوجه الهندسي ولكن يتم توسيعه مرة أخرى بواسطة المتصفح الخاص بي ليلائم كثافة العرض.

عند النظر عن كثب إلى قوامي المتكرر ، أستطيع أن أرى أنه أثناء ضبط التباين إلى أقصى حد أدى إلى زيادة الجودة إلى حد كبير ، لا يزال النسيج غير حاد كما ينبغي

من الصعب معرفة ما يحدث دون رؤية المثال أو على الأقل لقطات شاشة ، ولكن قد ترغب في إلقاء نظرة على هذا:

http://www.khronos.org/webgl/wiki/HandlingHighDPI

رابط رائع alteredq ! أصلحت مشاكلي ، كل شيء يبدو حادًا الآن :)

مجرد ترك تعليق هنا لأي شخص آخر يجد هذا ، لأنني كدت أن أغضب أثناء محاولتي العثور على إجابة وواصلت Google إحضار لي هنا: لقد واجهت نفس المشكلة بالضبط ولكن مشكلتي كانت حلاً بسيطًا للغاية ، كان ببساطة تعيين devicePixelRatio في العارض (r72):

renderer.setPixelRatio(window.devicePixelRatio ? window.devicePixelRatio : 1);

_ من الجدير بالذكر أن تعيين devicePixelRatio عند إنشاء الكائن لا يعمل. ربما خطأ؟ _

_ من الجدير بالذكر أن إعداد devicePixelRatio عند إنشاء الكائن لا يعمل. ربما خطأ؟ _

تمت إزالته منذ فترة.

mrdoob ، greggman : لمعلوماتك ، ليس من الواضح على الإطلاق أنه يتعين على المرء الاتصال بـ renderer.setPixelRatio _before_ renderer.setSize .

mietek في الواقع ، أعتقد أن هذا ربما تم إصلاحه في dev عن غير قصد بالفعل ...

ليس من الواضح على الإطلاق أنه يتعين على المرء استدعاء renderer.setPixelRatio قبل استدعاء renderer.setSize.

إنه لا يساعد حتى ، أو هكذا يبدو. هذا ما أحصل عليه في وحدة تحكم سفاري:

screen shot 2016-01-24 at 19 15 50

وهذا ما يبدو عليه في ipad:

screen shot 2016-01-24 at 19 21 05

كما ترى ، يبدو أن حجم المستطيل صحيح ، لكن إطار العرض الفعلي أكبر بمقدار 2x.

تبدو الأشياء بشكل صحيح في محاكي chrome مع dpr = 2 ولكن على iPad لا تفعل ذلك.

makc هل لديك رابط؟

[إزالة]

شيء آخر يجري...

screen shot 2016-01-24 at 19 12 49

باستخدام أدوات مطوري Safari ، قمت بتغيير style="width: 418px إلى style="width: 408px والعودة ويبدو الأمر كما ينبغي. أراهن أن هناك بعض الأشياء الأخرى التي تفسد قواعد css.

يبدو أن إمالة الشيء للأمام والخلف يصلح هذا أيضًا ... بأي طريقة ، هذا

        setTimeout (function () {
            renderer.domElement.style.width = (parseInt (renderer.domElement.style.width) - 1) + 'px';
            setTimeout (function () {
                renderer.domElement.style.width = (parseInt (renderer.domElement.style.width) + 1) + 'px';
            }, 0);
        }, 0);

لم يعمل على الإطلاق. العودة إلى لوحة الرسم ...

هل كانت هذه الصفحة مفيدة؟
0 / 5 - 0 التقييمات