Dodawanie geometrii do siatki three.js po renderowaniu

Tworzę siatkę z instancją TRZY.Geometria, a następnie zapełniam geometrięvertices ifaces tablice dynamicznie. Geometria jest iteracyjnie ulepszana, dodając dodatkowe wierzchołki i ściany przy każdej iteracji. Jeśli udoskonalę geometrię przed dodaniem siatki do sceny, renderuje się poprawnie. Jeśli jednak dodam siatkę do sceny i wyrenderuję ją, a następnie zmodyfikuję, pokazane zostaną tylko początkowe N powierzchni geometrii zawartej w pierwszym renderowaniu. Zmiany położenia wierzchołków używanych przez te ściany są honorowane, ale renderowane są tylko te N ścian.

Instancja geometrii jest zaznaczonadynamic = truei ustawiłemverticesNeedUpdate, elementsNeedUpdate ibuffersNeedUpdate za każdym razem po zmodyfikowaniu geometrii. Próbowałem także ustawić wszystkie inne „brudne” flagi, chociaż oczekuję tylko, że będę musiał ustawić te trzy (a nawet wtedy nie jestem pewien, czy powinienem potrzebować buffersNeedUpdate).

O ile widzę, geometriageometryGroup igeometryGroupList właściwości są budowane i zapełniane z powierzchni istniejących, gdy siatka jest po raz pierwszy renderowana, ale nie są odbudowywane w celu uwzględnienia ścian dodanych później.

Co ja robię źle?

questionAnswers(1)

yourAnswerToTheQuestion