forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Проекты на Blitz3D (http://forum.boolean.name/forumdisplay.php?f=14)
-   -   Bombers3D (http://forum.boolean.name/showthread.php?t=166)

pax 02.12.2005 21:57

Цитата:

Originally posted by alcoSHoLiK@Dec 2 2005, 09:54 PM
Вот так вот оно и случается: программил на Блице, вдруг бац - и ты уже на С++ пишешь :)
Так вот :) решил заняться чемнить серьезным, вот и сел за С++ :)

jimon 02.12.2005 22:01

и я уже перешол на C++
вообще блиц помойму устарел для чего нибудь...
разве что blitzmax поднимит планку

но его как такового нету
потому переходим на C++

НУБ 03.12.2005 06:14

Цитата:

Originally posted by PAX@Oct 11 2005, 08:26 PM
жаль нет комманды DeleteTriangle()... cделал бы еще быстрее
На самом деле такую команду реализовать довольно просто как и DeleteVertex ;)

pax 04.12.2005 01:17

Цитата:

Originally posted by Ньюб+Dec 3 2005, 06:14 AM--><div class='quotetop'>ЦИТАТА(Ньюб @ Dec 3 2005, 06:14 AM)</div><div class='quotemain'> <!--QuoteBegin-PAX@Oct 11 2005, 08:26 PM
жаль нет комманды DeleteTriangle()... cделал бы еще быстрее
На самом деле такую команду реализовать довольно просто как и DeleteVertex ;) [/b][/quote]
Может поделишься мыслями по этому поводу?

PS: Толоко не надо предлагать заново перестраивать меш без этих треугольников и вертексов, все и так в "реальном" времени перестраивается.

НУБ 04.12.2005 01:59

Не надо ничего перестраивать, просто удаляешь последний тр-к в индекс-буффере, и копируешь его значения в тр-к, который надо было удалить, с вершинами также.
Вообщес сделаю ка я небольшую либку для таких дел, скоро выложу...

pax 04.12.2005 02:51

Цитата:

Originally posted by Ньюб@Dec 4 2005, 01:59 AM
Не надо ничего перестраивать, просто удаляешь последний тр-к в индекс-буффере, и копируешь его значения в тр-к, который надо было удалить, с вершинами также.
Вообщес сделаю ка я небольшую либку для таких дел, скоро выложу...

Вообще-то игра написана на Blitz3D а не на C++ :)

НУБ 04.12.2005 03:02

Ну а блиц в свою очередь написан на С++ :)
Так что это меняет? я предлагаю сделать длл-ку с ф-цией удаления тр-ка.

pax 04.12.2005 03:14

Цитата:

Originally posted by Ньюб@Dec 4 2005, 03:02 AM
Ну а блиц в свою очередь написан на С++ :)
Так что это меняет? я предлагаю сделать длл-ку с ф-цией удаления тр-ка.

И как же ты собираешься удалить треугольник из модели блитца с помощью DLL? :dontknow:

НУБ 04.12.2005 03:27

Алгоритм я уже написал.

НУБ 04.12.2005 05:46

Ну вотс, готово, либа здесь:
http://andreyman.nm.ru/Aops.zip
Юзается это так:
Код:

Function ADeleteTris (surf, tris)
I_BufStart=IndexBufStart(surf)
I_BufEnd=IndexBufEnd(surf)
DeleteTris *surf, I_BufStart, I_BufEnd , tris
End Function

Function SetTriangleVertex (surf, tris,TrangleVertex, NewValue)
SetTrisVertex ( IndexBufStart(surf), tris,TrangleVertex,NewValue)
End Function

Только не советую применять эту ком-ду слишком часто.

pax 04.12.2005 12:22

Тоесть получается так, что ты знаешь структуру модели блитца в памяти? :blink:

jimon 04.12.2005 14:30

ее все давно знают :lol:

pax 04.12.2005 20:13

Цитата:

Originally posted by jimon@Dec 4 2005, 02:30 PM
ее все давно знают :lol:
Ага, кроме меня... а где об этом почитать можно?

НУБ 04.12.2005 22:39

Извиняйте, я там ошибку допустил в удалении тр-ка, теперь всё поправил, либа на том же месте.
ЗЫ
И не забывайте, что на место тр-ка(который надо удалить) копируется последний тр-к, который впоследствии и удаляется.

pax 05.12.2005 22:19

2Ньюб
Спасибо за либу, может когданить пригодется, просто я завязал недавно с блитцем... лучше кинь эту либу в тему "Полезные функции", чтоб многие ей воспользоваться могли,и к тому же чтоб ее использовать, мне придется весь двиг переделывать для этого (((

Все равно, спасибо за старания :super:


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

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