forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Как обратиться ко всем существующим ентити? (http://forum.boolean.name/showthread.php?t=7587)

ELIAS 07.01.2009 17:27

Как обратиться ко всем существующим ентити?
 
Как???

ЗЫ: Ентити никак не связаны. Они не являются составляющими типов и массивов...

impersonalis 07.01.2009 17:47

Ответ: Как обратиться ко всем существующим ентити?
 
никак.
Только стереть их EndGraphics

H@NON 07.01.2009 18:09

Ответ: Как обратиться ко всем существующим ентити?
 
поищи на офф сайте блитца либу Blitz3D+.dll, там есть функции по управлению с энтитями и их отловом :)

Spiderman 08.01.2009 18:36

Ответ: Как обратиться ко всем существующим ентити?
 
Я бы не парился и создал бы тип объектов и прогонял бы все составляющие через цикл For...each

ABTOMAT 08.01.2009 21:58

Ответ: Как обратиться ко всем существующим ентити?
 
Вложений: 1
Не про эту либу выше говорили?
Поищи в ней можетнайдёшь то что нужно.

-=Jack=- 10.01.2009 17:51

Ответ: Как обратиться ко всем существующим ентити?
 
Вложений: 1
Вот, написал либу для этой цели. ;) Содержит четыре функции:
NextEntity%(current%)
PreviousEntity%(current%)
FirstEntity%(current%)
LastEntity%(current%)
Думаю, назначение каждой понятно. во всех случаях current - любая entity (для этой цели даже можно отдельную сделать.)
Вот пример:
Local c=CreateCube()
e=FirstEntity(c)
While e<>0
Print EntityName(e)
e=NextEntity(e)
Wend
FreeEntity c

Выведет на экран имена всех существующих энтити.

tormoz 10.01.2009 19:09

Ответ: Как обратиться ко всем существующим ентити?
 
Если разобраться в проблеме, то окажеться, что это обращение нужно автору исключительно потому, что он придумал дебильный неправильный алгоритм игры.

Я даже не могу представить, где такой бред мог бы понадобится.

Налицо "перескакивание" через необходимые этапы обучения игростроению
Не сделав своего "тетриса", автор схватился за мега-проЭкт, совершенно не представляя, как это делается вообще.
Отсюда масса вопросов, от которых бывалые девелоперы чешут в затылке (вопросы нелепы), или падают "падстол"

H@NON 10.01.2009 22:24

Ответ: Как обратиться ко всем существующим ентити?
 
tormoz, да пусть парень разберется в чем его проблема, заюзает пару раз библу, образумится и сделает все правильно :) , имхо, этот путь эффективный, но затраты времени и нервов большие.

mr.DIMAS 10.01.2009 23:42

Re: Как обратиться ко всем существующим ентити?
 
Э нет уважаемый, tormoz прав и еще как, пока не сделал простенький проЭкт нех*р братся за супермегаза*бенную игру. имхо так и появляются игры с плоской графикой и тупым сюжетом

NitE 11.01.2009 00:06

Re: Как обратиться ко всем существующим ентити?
 
причем тут графика и сюжет ? тут про прогинг речь идет... (ведь модели и натыреть можно - но вот нахрена они нужны когда код черезжопный)

а мне кстати либа эта кажется полезной, но конечно не для создания игр)))

H@NON 11.01.2009 14:23

Ответ: Re: Как обратиться ко всем существующим ентити?
 
Цитата:

Сообщение от mr.DIMAS (Сообщение 94386)
Э нет уважаемый, tormoz прав и еще как, пока не сделал простенький проЭкт нех*р братся за супермегаза*бенную игру. имхо так и появляются игры с плоской графикой и тупым сюжетом

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

NitE 11.01.2009 16:23

Re: Как обратиться ко всем существующим ентити?
 
xD насколько я помню - тормоз свой первый проект делал на асме для спектрума )))

вот скажи-те кто-нить - зачем может понадобится обращятся ко всем энтити ???

H@NON 11.01.2009 16:50

Ответ: Как обратиться ко всем существующим ентити?
 
менеджер ресурсов?
Во всяком случае это легко и наглядно реализуется типами, как и было написано выше(сам так делаю).

impersonalis 11.01.2009 17:58

Ответ: Как обратиться ко всем существующим ентити?
 
stop offtop

ELIAS 11.01.2009 23:43

Ответ: Как обратиться ко всем существующим ентити?
 
Цитата:

вот скажи-те кто-нить - зачем может понадобится обращятся ко всем энтити ???
Редактор карт. Создаются объекты - ентити... При сохранении в файл перебираются все ентити - вот и всё)))
Я сам думаю что типами будет лучше...Только что-то я не очень понимаю как там это всё получше организовать...Структура объектов достаточна сложна(((

Я ещё вот так люблю делать:
for i = 1 to 100
nobj = "nobj"+str(i)
nobj = createcube()
next

Нууу...это конечно так на случай если обращаться к объектам потом не придётся...Хотя и обратиться можно. и всё то тут есть! Сам придумал)))
В некоторых случаях удобней чем типи или массивы, без шуток!

Подскажите мне пожалуйста как лучше организовать хранение данных и их загрузку об уровне - те карту уровня.
У меня у каждого объекта есть нескольско свойств
Posx, posy,posz,rotx,roty,rotz,scalex,scaley,scalez, path$
ну думаю понятно что для чего нужно)))

NitE 12.01.2009 00:35

Re: Как обратиться ко всем существующим ентити?
 
ну так типами и делай - проще всего

Taugeshtu 12.01.2009 00:46

Ответ: Как обратиться ко всем существующим ентити?
 
оффтоп
for i = 1 to 100
nobj = "nobj"+str(i)
nobj = createcube()
next
---------------------
Т.е. если я сделаю так:
obj = "obj"+1
obj1 = CreateCube()

ЭТО заработает? *с круглыми глазами ушел проверять*
/оффтоп

HolyDel 12.01.2009 14:01

Ответ: Как обратиться ко всем существующим ентити?
 
Ize'g0re, конечно не будет.

вообще алгоритм такой:
1) попытаться сделать через типы - самый нормальный вариант
2) попытаться сделать через библиотеку - тоже вариант
3) попытаться сделать через Ж (NameEntity, EntityName)
- самый плохой вариант, так как name бывает много где нужен.

ELIAS 12.01.2009 16:30

Ответ: Как обратиться ко всем существующим ентити?
 
Цитата:

оффтоп
for i = 1 to 100
nobj = "nobj"+str(i)
nobj = createcube()
next
---------------------
Т.е. если я сделаю так:
obj = "obj"+1
obj1 = CreateCube()

ЭТО заработает? *с круглыми глазами ушел проверять*
/оффтоп
И ещё...Блитц умеет инклудить не бб файлы??? Я хочу сохранять уровень в свой формат - По сути это тот же бб, но префикс будет другой. Так понтовей :) А не инклудит...и в справке написано что типа только бб понимает функция include:mad:

Ize'g0re, ты неправельно меня понял, название обекта здесь - чисто условное. Делать нужно именно так как я написал!(если хотите как то так делать всмысле))) Потом при редактировании опять делаем новую переменную которой присваиваем имя объекта, а сама переменная может называться как угодно, главное что у неё внутри)))

impersonalis 12.01.2009 17:55

Ответ: Как обратиться ко всем существующим ентити?
 
Цитата:

3) попытаться сделать через Ж (NameEntity, EntityName)
- самый плохой вариант, так как name бывает много где нужен.
В name моно запихать дескриптор экземпляра описательного типа.

Harter 14.01.2009 08:46

Ответ: Как обратиться ко всем существующим ентити?
 
Цитата:

Сообщение от ELIAS (Сообщение 94557)
И ещё...Блитц умеет инклудить не бб файлы??? Я хочу сохранять уровень в свой формат - По сути это тот же бб, но префикс будет другой. Так понтовей :) А не инклудит...и в справке написано что типа только бб понимает функция include:mad:

Видимо врет справка, инклудит - еще как:ok:
ИМХО: Не вижу смысла менять расширение файла без кодировки его содержимого.

NitE 14.01.2009 21:31

Re: Как обратиться ко всем существующим ентити?
 
вот тока нафига те уровни в bb c другим расширением ?? если хочешь свой формат так и делай его (немного экономий места + больше возможностей )) ) а потом просто openfile-readfile-closefile ))) по сути будет просто текстовый файл, но с лбым именем + если ещё зашифровку напишешь, то будет казатся что свой мего-кул формат который даже блокнотом не открыть )))

Randomize 15.01.2009 05:03

Ответ: Re: Как обратиться ко всем существующим ентити?
 
Оффтоп
Цитата:

Сообщение от mr.DIMAS (Сообщение 94386)
Э нет уважаемый, tormoz прав и еще как, пока не сделал простенький проЭкт нех*р братся за супермегаза*бенную игру. имхо так и появляются игры с плоской графикой и тупым сюжетом

А штук 50-60 недоделок сравнимы с собственным мегатетрисом?
На практике оказывается что завешить даже наитупейший проэкт бывает крайне сложно.

CRASHER 16.01.2009 15:39

Ответ: Как обратиться ко всем существующим ентити?
 
Наверно несравнить в том плане что структура знаний больший порядок имеет в случа с тетрисом нежели во втором случае. К томуже придётся понять что движение от простого к сложному это лучше чем наоборот.(У самого под 40 незаконченных проджектов :-D ) Наверно это судьба начинающего разработчика самоучки.

NitE 16.01.2009 16:01

Re: Как обратиться ко всем существующим ентити?
 
у нас щяс какой год ? прально 2009, так вот щяс я что-то вижу больше шутеров в продаже чем тетрисов )) я даже щяс незнаю как написать тетрис потомучто там нужны алгоритмы и т.п. которые щяс никому нафиг ненужны, поэтому даже если не писать тетрис, а начинать нормальную игру, это всяко лучше повлияет на опыт... вот если пойти на работу программером в геймдев, там скажут - что делал ?... аа ну нам тут тетрисы ненужны, мы тут вообщето игры делаем не на спектрумы... а вот если скзазать что делал шутер, но незакночил, зато есть крутая техно-дема и ты умеешь писать всякие шейдеры то шансы получить работу сразу возрастут ))

tormoz 16.01.2009 18:47

Ответ: Re: Как обратиться ко всем существующим ентити?
 
Цитата:

Сообщение от NitE (Сообщение 94919)
у нас щяс какой год ? прально 2009, так вот щяс я что-то вижу больше шутеров в продаже чем тетрисов ))

Бред
Самый покупаемый жанр - паззлы

Цитата:

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

Цитата:

вот если пойти на работу программером в геймдев, там скажут - что делал ?... аа ну нам тут тетрисы ненужны, мы тут вообщето игры делаем
Ты хоть раз ходил устраиваться ?
Или твои друзья ходили ?
Не пиши того, о чем не имеешь представления.
Если ты не можешь сделать тетрис, то тебя возьмут максимум уборщицей :-D

Цитата:

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

NitE 16.01.2009 18:57

Re: Как обратиться ко всем существующим ентити?
 
1. может среди казуалок - 40 летних домохозяек )))
2. да может я и ламер... нечего сказать )))
3.не ходил )) и не собираюсь... мнеб сначала школу закончить )
4. практика показывает обратное )) (крутая технодема это одна графика, код большой роли не играет... конечно если не говорить про оптимизацию... которую я никогда не делаю... наверно зря... )))) )

CRASHER 16.01.2009 19:31

Ответ: Как обратиться ко всем существующим ентити?
 
NitE, я сказал тетрис просто из-за того что это так принято называть простые игры :)
А вообще меня воротит и выварачивает от слова тетрис до действительно ТеТриса я не хочу дойти. Я понимаю под этим простые игрушки ну... ну например пазлы :-) ну или на худой конец 2д контра :-D

NitE 16.01.2009 21:45

Re: Как обратиться ко всем существующим ентити?
 
я например щяс делаю игрушку типа баланса... вроде и не сложно и не такое гавно как всякие тетрисы и т.д.

ELIAS 17.01.2009 18:48

Ответ: Как обратиться ко всем существующим ентити?
 
Цитата:

Подскажите мне пожалуйста как лучше организовать хранение данных и их загрузку об уровне - те карту уровня.
У меня у каждого объекта есть нескольско свойств
Posx, posy,posz,rotx,roty,rotz,scalex,scaley,scalez, path$
ну думаю понятно что для чего нужно)))
Цитата:

ну так типами и делай - проще всего
Можно поподробней как ВСЁ это сделать типами. Меня особо интересует как вы все тут собираетесь сохранять мап-карту с помощью типов??? Кто нибудь может написать как примерно должен выглядеть такой мап файл сделанный типами, оторая будет описывать 2 или более объектов.

Например с помощью массивов я делаю так:
Код:

dim obj(10000,4) ; где 1-тип модели объекта, 2 - позиция по иксу, 3- позиция по игреку, 4 - позиция по зету

obj(1,1)=usualobj
obj(1,2)=100
obj(1,3)=87
obj(1,4)=76
obj(2,1)=enemylobj
obj(2,2)=108
obj(2,3)=870
obj(2,4)=551

Это легко и записать и считать! А как подобное реализовать типами вообще непонятно! Ведь у типов нету индексов как у массивов!

H@NON 17.01.2009 19:00

Ответ: Как обратиться ко всем существующим ентити?
 
чаще читай БлитцЦетеру : http://blitzetc.blitzmax.ru/index.php/%D0%97%D0%B0%D0%B3%D1%80%D1%83%D0%B7%D0%BA%D0%B0_% D0%B8_%D1%81%D0%BE%D1%85%D1%80%D0%B0%D0%BD%D0%B5%D 0%BD%D0%B8%D0%B5
Цитата:

А как подобное реализовать типами вообще непонятно! Ведь у типов нету индексов как у массивов!
а циклы на что? ты хоть раз в справку заглядывал?
For p.Players = Each Players
WriteLine file, "Player"
WriteLine file, Entityx(p\ent)
WriteLine file, Entityy(p\ent)
WriteLine file, Entityz(p\ent)
Next

avel 19.01.2009 02:55

Ответ: Как обратиться ко всем существующим ентити?
 
да никуда он не заглядывал... и вообще непонятно что за поколение такое растет, уже тетрисы им не нравятся... кол-во шутеров сейчас такое, что от них уже тошнить начинает... еще один-два годика и они всем надоедят. и в "крутой" компании города бабруйска при приеме на работу вам скажут: разработчеги шутеров уже не нужны. да и блица с физиксами облегчающие жизнь там скорее всего нет... так что алгоритмы знать надо!


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

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