forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   Xors3D (http://forum.boolean.name/showthread.php?t=6180)

MaxEDn2 05.08.2009 16:46

Ответ: Xors3D
 
Балин я так и сделал. Не хочет и все. На VC++ это работет, а тут нет.

Knightmare 05.08.2009 16:48

Ответ: Xors3D
 
Значит нет. Ищи, удаляй.

MaxEDn2 05.08.2009 17:00

Ответ: Xors3D
 
Версия Blitz3D последняя, из-за него я думаю, проблем не будет.. попробую посмотреть. А вот забыл, PhysX врапер с Xors3D с функцией BodyCreateHull и BodyCreateMesh не дружат, как его сделать чтобы он работал.

Knightmare 05.08.2009 17:04

Ответ: Xors3D
 
С каких это пор не дружат они? Создание хулов и тримешей гораздо проще и быстрее и Хорсе. А когда мы еще и засунем физикс в Хорс полностью (есть такие планы) то по простоте работы и скорости он разорвет блитз+физикс в клочья.

MaxEDn2 05.08.2009 17:07

Ответ: Xors3D
 
Класс, это будет лучше. А можно функцию BodyCreateHull и BodyCreateMesh с Xors3D дать?

Knightmare 05.08.2009 17:09

Ответ: Xors3D
 
Блин, ну на сайте же даже примеры для физикса на Хорсе сделаны.

MaxEDn2 05.08.2009 17:16

Ответ: Xors3D
 
Поском не нашол, там только проблеммы с ними описаны.

Knightmare 05.08.2009 17:19

Ответ: Xors3D
 
Зочем посик? И на каком сайте вообще? http://xors3d.com -> Depository -> Demos And Samples -> [Phi]sics -> samples.zip

ABTOMAT 05.08.2009 20:11

Ответ: Xors3D
 
Цитата:

А можно функцию BodyCreateHull и BodyCreateMesh с Xors3D дать?
Блитзовые BodyCreateHull и BodyCreateMesh переделываются на ксорс таким образом: в командах движка дописываем x и заменяем нумерацию во всех счётчиках на диапазон от 0 до xCount....()-1.

- Ваш Кэп

Код:

Function BodyCreateHull%(mesh%, mass#)
        Local nsurf = CountSurfaces(mesh)
        Local nvert = 0
        For ns = 1 To nsurf
                Local surf = GetSurface(mesh,ns)
                nvert = nvert + CountVertices(surf)
        Next
            vbank = CreateBank(nvert*4*3)
        nv = 0
        For ns = 1 To nsurf
                surf = GetSurface(mesh,ns)
                nvv = CountVertices(surf)
                For nvc = 0 To nvv - 1
                        PokeFloat vbank,nv*12+0,VertexX(surf,nvc)
                        PokeFloat vbank,nv*12+4,VertexY(surf,nvc)
                        PokeFloat vbank,nv*12+8,VertexZ(surf,nvc)
                        nv = nv+1
                Next
        Next
        Local bbb%= pxBodyCreateHull(vbank, nvert, mass)
        FreeBank vbank
        Return bbb
End Function

Function BodyCreateMesh(mesh%)
        nsurf = xCountSurfaces(mesh)
        nvert = 0
        nface=0
        For ns = 0 To nsurf-1
                Local surf = xGetSurface(mesh,ns)
                nface = nface+xCountTriangles(surf)
                nvert = nvert +xCountVertices(surf)
        Next

        fbank = CreateBank(nface*4*3)
        nf = 0
        vbank = CreateBank(nvert*4*3)
        nv = 0
        For ns = 0 To nsurf-1
                surf = xGetSurface(mesh,ns)
                nfv = xCountTriangles(surf)
                For nfc = 0 To nfv -1
                        PokeInt fbank,nf*12+0,xTriangleVertex(surf,nfc,0)
                        PokeInt fbank,nf*12+4,xTriangleVertex(surf,nfc,1)
                        PokeInt fbank,nf*12+8,xTriangleVertex(surf,nfc,2)
               
                        nf=nf+1
                Next

                nvv = xCountVertices(surf)
                For nvc = 0 To nvv - 1
                        PokeFloat vbank,nv*12+0,xVertexX(surf,nvc)
                        PokeFloat vbank,nv*12+4,xVertexY(surf,nvc)
                        PokeFloat vbank,nv*12+8,xVertexZ(surf,nvc)
                        nv = nv+1
                Next
        Next
        bbb%=pxCreateTriMesh(vbank, fbank, nvert, nface,0)
        FreeBank vbank
        FreeBank fbank
        Return bbb%
End Function

http://forum.boolean.name/showpost.p...50&postcount=4
Блин ну для кого писал. :wallbash:
Между прочим там дано описание структуры банка, который передаётся в dll, чтобы можно было написать такие функции для любого движка (специально подробно разъяснил) и для загрузки из файла и т.д.

Knightmare 05.08.2009 21:33

Ответ: Xors3D
 
Епть. xGetMeshVB(), xGetMeshVBSize(), xGetMeshIB(), xGetMeshIBSize(), xDeleteMeshVB(), xDeleteMEshIB(). Все. Никаких банков и прочей ереси.

ABTOMAT 05.08.2009 21:44

Ответ: Xors3D
 
Ну, человек просил
Цитата:

А можно функцию BodyCreateHull и BodyCreateMesh с Xors3D дать?
А вообще советую перечитать пост из учебник внимательно, особенно то место, где описывается банк. Например у меня геометрия физики хранится в отдельном формате и от граф. движка не зависит (хоть вообще без него).

moka 06.08.2009 03:31

Ответ: Xors3D
 
Knightmare, там на самом деле ругается на функцию эмитера. В ббшке. (Билд: 323. Aug 4, 2009)

Knightmare 06.08.2009 03:36

Ответ: Xors3D
 
Угу, я decls который в userlibs лежит у мну поправил, вместо того чтобы из репозитория. Перезалил. Но такой косяк и руками пофиксить не сложно.
http://latest.xors3d.com/xors3d.rar

MaxEDn2 06.08.2009 12:17

Ответ: Xors3D
 
Я удалил Функцию эмитра в Xors3D.bb, и заработало, вот только пример с партиклами не хочет больше работать.
Спасибо за функцию, и ссылки. И тут назревает вопрос, что- за время 30 мин идет постоянно, как это убрать, и под какую самую малую видюху Geforce шейдеры и вообще все сделано, у меня тени не работают, а остальное работает.

MaxEDn2 06.08.2009 13:33

Ответ: Xors3D
 
Цитата:

Сообщение от Knightmare (Сообщение 113178)
Угу, я decls который в userlibs лежит у мну поправил, вместо того чтобы из репозитория. Перезалил. Но такой косяк и руками пофиксить не сложно.
http://latest.xors3d.com/xors3d.rar

Скачал, закинул все как нужно, без ошибок. И тут пишет User LIB not found в строке кода xAppTitle, я его удалил, и ошибка в строке xGraphics3D, только в Xors3D.bb.
Че такое? я не в курсе.


Часовой пояс GMT +4, время: 19:18.

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot