в смысле - как обновить элементы массива?
или как отправить только измененные части атрибута в гпу?
https://threejs.org/docs/#api/en/core/BufferAttribute.updateRanges
вдруг поможет )
не пользовался - щас только увидел в документации
смотри также про .addUpdateRange() и .clearUpdateRanges()
здесь просто много нулей есть которые обновляются, так как я создал типизированный массив 1 раз, вот и хочу узнать как обновить частями)
// render loopЧитать полностью…
rebuildMesh();
geometry.attributes.position.needsUpdate = true;
geometry.setDrawRange(0, face * 6);
geometry.index.needsUpdate = true;
const geometry = new THREE.BufferGeometry();
const interleavedBuffer = new THREE.InterleavedBuffer(positions, 4);
const positionAttribute = new THREE.InterleavedBufferAttribute(
interleavedBuffer, 3, 0, false);
const normalIDAttribute = new THREE.InterleavedBufferAttribute(
interleavedBuffer, 1, 3, false);
geometry.setAttribute('position', positionAttribute);
geometry.setAttribute('normalID', normalIDAttribute);
geometry.setIndex(new THREE.BufferAttribute(indices, 1));
material.wireframe = 0;
//!material.side = THREE.FrontSide;
const mesh = new THREE.Mesh(geometry, material);
scene.add(mesh);
если я создал типизированный массив для позиций и индексов
и обновляю их каждый кадр
// render loop
rebuildMesh();
geometry.attributes.position.needsUpdate = true;
geometry.setDrawRange(0, face * 6);
geometry.index.needsUpdate = true;
та просто видел год назад ты или кто-то ещё говорил, что с буферами чёт не так в 3жс
Читать полностью…Ого красиво, не хватает глоу и чутка ярче как будто оно, когда в телескопе смотришь.
Читать полностью…а, тогда все ОК, я просто зацепился за то, что ты написал про типизированные массивы ).setIndex()
на вход должен получать либо BufferAttribute, либо обычный Array (не типизированный)
Всем привет, очень рад что нашел этот канал. Я сам фронтенд разработчик, в последнее время стала интересна тема дополненной реальности, понимаю что это очень обширная тема, но хочу начать погружаться с основ. Правильно ли я понимаю что сначала нужно основы 3D геометрии в принципе, потом WebGPU, TheeJs и уже там когда то в будущем переходить на Unreal или Unity. Что бы было понятнее, меня заинтересовала тема очков дополненной реальности
Читать полностью…Что-то не учел с самого начала и прийдётся все переделывать, либо собирать изначально сверх гибкую
Читать полностью…Привет! Луна. Свой движек, пилю потихонньку. https://sandbox.openglobus.org/examples/moon/moon.html
Читать полностью…я вижу узкие места, та и оптимизировать легко
на данный момент у меня проблема с логикой, мне тяжело прописать код как я задумал
т.е. думаю правильно, но написать код сложно (больше JS касается)