Исключение доступа CookTriangleMeshC++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Исключение доступа CookTriangleMesh

Сообщение Anonymous »


PxTriangleMesh* PhysX::CreateTriangleMesh(const PxVec3* verts, const PxU32 numVerts , const PxU32* индексы, const PxU32 numIndexes, PxPhysics* физика, PxCooking* кулинария) { // Создаем дескриптор для треугольной сетки PxTriangleMeshDesc meshDesc; meshDesc.points.count = numVerts; meshDesc.points.stride = sizeof(PxVec3); meshDesc.points.data = верт; meshDesc.triangles.count = numIndexes/3; meshDesc.triangles.stride = 3 * sizeof(PxU32); meshDesc.triangles.data = индексы; // для предотвращения переполнения стека PxU32 AssessmentVertSize = numVerts * sizeof(PxVec3) * 1,5; PxU32 оцененныйIndexSize = numIndexes * sizeof(PxU32) * 1,5; PxU32 начальныйРазмер = оцененныйVertSize + оцененныйIndexSize; CustomPhysXMemory writeBuffer(initialSize); //PxDefaultMemoryOutputStream writeBuffer; bool status = приготовление пищи->cookTriangleMesh(meshDesc, writeBuffer); если (!статус) вернуть нульптр; PxDefaultMemoryInputData readBuffer(writeBuffer.getData(), writeBuffer.getSize()); PxTriangleMesh* треугольникMesh = физика->createTriangleMesh(readBuffer); вернуть треугольникMesh; } Я хочу создать коллайдер для создания сетки этой нагрузки с помощью assimp, поэтому я создал physX-треугольную сетку. Во многих ситуациях это работает Но иногда в CookTriangleMesh Исключение, созданное по адресу 0x00007FFD322F259E (PhysXCooking_64.dll) в Client.exe: 0xC0000005: местоположение чтения нарушения прав доступа 0x0000019F69AA8000. происходит.

Я беспокоился о емкости буфера и дал ему пространство в 1,5 раза, и я проверил ((physx::PxSimpleTriangleMesh)&meshDesc),nd {points={count=82772 } треугольники={count=43798 } flags={mBits=0 } } writeBuffer.mBuffer.capacity() 2278260 Эти двое всегда заканчивались одинаковым успехом или неудачей..

Поэтому я понятия не имею, в чем проблема. Может ли мне помочь кто-нибудь, кто знает проблему и знает, как ее решить?
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»