Three.js: λ©΄μ΄μ—†λŠ” ν˜•μƒμ€ μ—¬μ „νžˆ β€‹β€‹λ©”μ‹œμ—μ„œ λ Œλ”λ§λ©λ‹ˆλ‹€.

에 λ§Œλ“  2017λ…„ 08μ›” 07일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: mrdoob/three.js

λ‚΄ κΈ°ν•˜ν•™μ€ 항상 λ™μΌν•œ 정점을 가지지 λ§Œλ©΄μ€ μ„ νƒμ μœΌλ‘œ μΆ”κ°€λœλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ¬΄μž‘μœ„λ‘œ 무언가λ₯Ό 그리기둜 κ²°μ •ν•©λ‹ˆλ‹€. μ—¬κΈ° 데λͺ¨.

Bug Won't fix

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

였늘이 문제λ₯Ό λ””λ²„κΉ…ν–ˆμŠ΅λ‹ˆλ‹€. Geometry λŠ” λ‚΄λΆ€μ μœΌλ‘œ BufferGeometry 둜 λ³€ν™˜λ©λ‹ˆλ‹€. 이 λ³€ν™˜μ˜ κ²°κ³ΌλŠ” 객체 μœ ν˜• (λ©”μ‹œ, μ„  λ“±)에 따라 λ‹€λ¦…λ‹ˆλ‹€. λ”°λΌμ„œ @makc 의 μ˜ˆμ—μ„œ κΈ°ν•˜ν•™μ€ Line 개체의 κΈ°ν•˜ν•™μœΌλ‘œ λ³€ν™˜λ©λ‹ˆλ‹€. μ΄λ ‡κ²Œν•˜λ©΄ μœ„μΉ˜ 및 색상 속성이 μƒμ„±λ©λ‹ˆλ‹€. Mesh 의 μΈμŠ€ν„΄μŠ€κ°€ λ™μΌν•œ Geometry 개체둜 λ Œλ”λ§λ˜λ©΄ λ Œλ”λŸ¬λŠ” BufferGeometry 의 λ™μΌν•œ μΊμ‹œ 된 μΈμŠ€ν„΄μŠ€λ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

https://github.com/mrdoob/three.js/blob/ec67749b0767e2727deebd52da2dbd3a4e7ab6a2/src/renderers/webgl/WebGLGeometries.js#L63 -L65

이것이 데λͺ¨μ—μ„œμ΄ 녹색 μ‚Όκ°ν˜•μ„ λ³΄λŠ” μ΄μœ μž…λ‹ˆλ‹€. Mesh 및 Line λŠ” λ™μΌν•œ λ‚΄λΆ€ BufferGeometry κ³΅μœ ν•˜λ©° λ‹€λ₯΄κ²Œ ν•΄μ„ν•©λ‹ˆλ‹€. BufferGeometry 캐싱 ν•  λ•Œ 객체의 μœ ν˜•μ„ μ‘΄μ€‘ν•˜λ©΄μ΄ 문제λ₯Ό ν•΄κ²°ν•  수 μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

λ˜λŠ” λ¨Όμ € BufferGeometry λ₯Ό μ‚¬μš©ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€ .sweat_smile :

λͺ¨λ“  3 λŒ“κΈ€

μ—¬κΈ°μ„œ λ°˜λŒ€ 문제-μ •μ˜ 된 얼꡴을 λ³Ό 수 μ—†μŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ μ•„λ§ˆλ„ 이것은 κΈ°ν•˜ν•™μ΄ μ„ κ³Ό λ©”μ‹œ 사이에 곡유되기 λ•Œλ¬ΈμΌ κ²ƒμž…λ‹ˆλ‹€.

였늘이 문제λ₯Ό λ””λ²„κΉ…ν–ˆμŠ΅λ‹ˆλ‹€. Geometry λŠ” λ‚΄λΆ€μ μœΌλ‘œ BufferGeometry 둜 λ³€ν™˜λ©λ‹ˆλ‹€. 이 λ³€ν™˜μ˜ κ²°κ³ΌλŠ” 객체 μœ ν˜• (λ©”μ‹œ, μ„  λ“±)에 따라 λ‹€λ¦…λ‹ˆλ‹€. λ”°λΌμ„œ @makc 의 μ˜ˆμ—μ„œ κΈ°ν•˜ν•™μ€ Line 개체의 κΈ°ν•˜ν•™μœΌλ‘œ λ³€ν™˜λ©λ‹ˆλ‹€. μ΄λ ‡κ²Œν•˜λ©΄ μœ„μΉ˜ 및 색상 속성이 μƒμ„±λ©λ‹ˆλ‹€. Mesh 의 μΈμŠ€ν„΄μŠ€κ°€ λ™μΌν•œ Geometry 개체둜 λ Œλ”λ§λ˜λ©΄ λ Œλ”λŸ¬λŠ” BufferGeometry 의 λ™μΌν•œ μΊμ‹œ 된 μΈμŠ€ν„΄μŠ€λ₯Ό λ°˜ν™˜ν•©λ‹ˆλ‹€.

https://github.com/mrdoob/three.js/blob/ec67749b0767e2727deebd52da2dbd3a4e7ab6a2/src/renderers/webgl/WebGLGeometries.js#L63 -L65

이것이 데λͺ¨μ—μ„œμ΄ 녹색 μ‚Όκ°ν˜•μ„ λ³΄λŠ” μ΄μœ μž…λ‹ˆλ‹€. Mesh 및 Line λŠ” λ™μΌν•œ λ‚΄λΆ€ BufferGeometry κ³΅μœ ν•˜λ©° λ‹€λ₯΄κ²Œ ν•΄μ„ν•©λ‹ˆλ‹€. BufferGeometry 캐싱 ν•  λ•Œ 객체의 μœ ν˜•μ„ μ‘΄μ€‘ν•˜λ©΄μ΄ 문제λ₯Ό ν•΄κ²°ν•  수 μžˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€.

λ˜λŠ” λ¨Όμ € BufferGeometry λ₯Ό μ‚¬μš©ν•˜λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€ .sweat_smile :

@mrdoob μƒˆ λ ˆμ΄λΈ” Wont't fix 을 λ„μž…ν•˜κ³  λ¬Έμ œμ— ν• λ‹Ήν•˜κ³  λ‹«λŠ” 것이 μ’‹μŠ΅λ‹ˆλ‹€. μ–΄μ¨Œλ“  ν”„λ‘œμ νŠΈκ°€ Geometry λ Œλ”λ§μ„ 쀑지 ν•  경우 λ Œλ”λŸ¬μ— μˆ˜μ • 사항을 μΆ”κ°€ν•˜λŠ” 것은 μ˜λ―Έκ°€ μ—†λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. 이 λ¬Έμ œμ— λŒ€ν•œ 해결책은 BufferGeometry μž…λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰