Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Blitz3D > 3D-программирование

3D-программирование Вопросы, касающиеся программирования 3D мира

Ответ
 
Опции темы
Старый 18.02.2007, 17:31   #1
JVSh
Оператор ЭВМ
 
Регистрация: 16.11.2006
Сообщений: 42
Написано одно полезное сообщение
(для 7 участников)
CountChildren - ТРАБЛА!

Кто знает, в чём может быть косяк?

В максе даю имена всем отдельным частям, всего их - 12, экспортирую в b3d,
Гружу в Blitz как LoadAnimMesh, делаю CountChildren и получаю число 4!

Причём, если просто обращаюсь по именам чилдов - всё нормально, отзываются все...

Но мне нужно их запихать в массив, чтоб не перебирать потом отдельно.



И вдогонку вопрос: а можно ли изменять свойства объекта загруженного как AnimMesh, не обращаясь к каждому из чилдов? (и как , если это возможно.)

И ещё один вопрос: как мне объявить массив внутри типа? И как с ним потом работать?
(Offline)
 
Ответить с цитированием
Старый 18.02.2007, 18:55   #2
SBJoker
Злобный Админ
 
Аватар для SBJoker
 
Регистрация: 04.09.2005
Сообщений: 5,926
Написано 3,415 полезных сообщений
(для 9,330 пользователей)
Re: CountChildren - ТРАБЛА!

ну так у чилдов есть иерархия же...если ты в максе припарентил (link) один объект к другому то он стал чилдом того объекта а не сцены как до этого..

Так то...
__________________
(Offline)
 
Ответить с цитированием
Старый 18.02.2007, 19:42   #3
Platon
Знающий
 
Регистрация: 04.08.2006
Адрес: Россия
Сообщений: 297
Написано 39 полезных сообщений
(для 70 пользователей)
Re: CountChildren - ТРАБЛА!

Поэтому определять чайлды удобно рекурсией - находишь чайлд, после чего проверяешь если ли у этого чайлда свой чайлд и т.д.

Массив в типе определяется так
Type ИмяТипа
   Field ИмяМассива[Размер]
End Type
Такой массив может быть только одномерным и с квадратными скобками.
Обращение к нему - как к обычному полю, но по индексу соотвественно.
Указатель\ИмяМассива[индекс]
(Offline)
 
Ответить с цитированием
Старый 18.02.2007, 19:44   #4
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Re: CountChildren - ТРАБЛА!

Используй рекурсию для добавления в массив

правка: Платон уже опередил
тогда код:
Dim mass(1000)
Global x_mass
Function AddChid(ent)
For i=1 to CountChildren(ent)
child=GetCild(ent,i)
If child<>0
mass(x_mass)=child
x_mass=x_mass+1
If CountChildren(child)
AddChid(child)
EndIf
EndIf
Next
End Function
__________________
(Offline)
 
Ответить с цитированием
Старый 18.02.2007, 22:32   #5
JVSh
Оператор ЭВМ
 
Регистрация: 16.11.2006
Сообщений: 42
Написано одно полезное сообщение
(для 7 участников)
Re: CountChildren - ТРАБЛА!

Всем большое спасибо!

Пока ждал ответа, просмотрел кучу исходников, нашёл там поля с одномерными массивами.
И в максе каким-то чудом прилинковал объекты (наверно горячие клавиши зацепил )

Жаль, что нельзя менять свойства анимированному мешу. Ведь перебор чайлдов всётаки занимаетпамять?
(Offline)
 
Ответить с цитированием
Старый 19.02.2007, 06:14   #6
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Re: CountChildren - ТРАБЛА!

Память занимает подгруженные объекты.
А выполнение кода занимает время.
ты производишь перебор один раз при загрузке - почему это тебя волнует ? хоть сто тысяч их перебирай - будет загружаться на несколько сек дольше и все
__________________
(Offline)
 
Ответить с цитированием
Старый 19.02.2007, 13:31   #7
JVSh
Оператор ЭВМ
 
Регистрация: 16.11.2006
Сообщений: 42
Написано одно полезное сообщение
(для 7 участников)
Re: CountChildren - ТРАБЛА!

Я время и имел ввиду...

Когда приходится менять свойства (цвет, прозрачность) АнимМешу с большим количеством чайлдов, и в сцене не один АнимМеш, а куча...(юниты всякие)...

Ну да ладно... Попробовал на двух мешах (а мене больше и не надо), вроде ФПС не падает...
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Травка зеленеет Petrofan 3D-программирование 28 17.07.2009 18:48
трабла jimon Алгоритмика 11 03.03.2006 02:17
Трабла с подгрузкой координат из файла Conan Fedr 3D-программирование 12 24.02.2006 22:31
трабла jimon C++ 21 23.11.2005 20:24


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


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com