forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Blitz3D (http://forum.boolean.name/forumdisplay.php?f=45)
-   -   Вопрос-Ответ (для новичков) (http://forum.boolean.name/showthread.php?t=7886)

Артем Валерьевич 28.10.2010 18:02

Ответ: Вопрос-Ответ (для новичков)
 
еще один перебор, только теперь тип енеми перебирать
Код:

For Shot.ShotsType=Each ShotsType
For Enemy.EnemyType=Each EnemyType

If EntityCollided(Shot\Model,SolidEnemy)
FreeEntity EntityCollided(Shot\Model,SolidEnemy) ; - удаляет модель врага с которой столкнулась пуля... отсюда вопрос

EndIf
Next
Next


Program23 28.10.2010 18:03

Ответ: Вопрос-Ответ (для новичков)
 
Бредовый *овнокод.Надо тем более лучше Hideentity делать.Я в не состоянии разобрать далее...

Randomize 28.10.2010 18:31

Ответ: Вопрос-Ответ (для новичков)
 
EntityCollided? Неееет! Да вычто? Этож мега лаг.
Юзайте тупо EntityDistance и тормозов не будет.

LLI.T.A.L.K.E.R. 28.10.2010 18:34

Ответ: Вопрос-Ответ (для новичков)
 
HideEntity - оставляет "прах" данных в памяти??

Мне нужно очищать от временно (а может и нет) не нужных данных.

Сделал так:

For Shot.ShotsType=Each ShotsType ; проверка каждой Пули
If EntityCollided(Shot\Model,SolidEnemy) ; если Пуля столкнулась с Врагом
CollidedModel=EntityCollided(Shot\Model,SolidEnemy ) ; привязка столкнувшегося Нужнего Врага
For Enemy.EnemyType=Each EnemyType ; проверка на каждого врага
If CollidedModel=Enemy\Model Then ; если Нужный Враг = переборный Враг
FreeEntity Enemy\Model ; удаляем модель Врага
Delete Enemy ; очищаем, удаляеам данные Врага
Exit
; сделано - выходим из перебора

EndIf
Next
EndIf
Next

Попробую исправлять на EntityDistance.

moka 29.10.2010 20:49

Ответ: Вопрос-Ответ (для новичков)
 
Перебор в переборе.
Получается чем больше пуль, и чем больше врагов, тем больше переборов и проверок на поподание.
Если у нас 10 пуль, и 10 врагов, это 100 переборов. А если я на пулемёте и стреляю сдалека по кучке врагов, 350 пулей, многие из них уже давно пролетели и промахнулись, а врагов 40, то это 14,000 переборов!
Внедряй разделения по местности и не используй глобальных списков.
В Блице хотябы храни локации как массив, и проверяй локацию которая разделена на квады, пули, с той же и прилегающих локаций монстрами. Таким образом не нужно держать всё.
К сожалению в Блице списков как таковой нету (загнать хандлы в массив? геморой).
И подобные вещи реализовать большая головная боль..
ЗЫ, если новичёк не слушайте всё что написал в этом посте ;)

is.SarCasm 29.10.2010 23:32

Ответ: Вопрос-Ответ (для новичков)
 
Цитата:

EntityCollided? Неееет! Да вычто? Этож мега лаг.
Юзайте тупо EntityDistance и тормозов не будет
Я бы переделал:
Blitz3d? Неееет! Да вычто? Этож мега лаг.
Юзайте тупо НЕ Blitz3d и тормозов не будет

baton4ik 29.10.2010 23:38

Ответ: Вопрос-Ответ (для новичков)
 
Зачем же так критично? Не так давно ты и сам считал блитц классным движком. Но пошли темы "блитц устарел! нужен новый движок". Зачем же так кардинально менять взгляды под влиянием других? Пусть блитц и устарел, он остаётся замечательным средством обучения для новичков. А для казуалок блитц и вовсе не устарел

is.SarCasm 29.10.2010 23:49

Ответ: Вопрос-Ответ (для новичков)
 
Не хочу устраивать дискуссии на эту тему здесь. (хотя сейчас у меня такой инет, что я не могу позволить себе скайп или асю :)))

DeeJex 30.10.2010 01:34

Ответ: Вопрос-Ответ (для новичков)
 
Цитата:

Blitz3d? Неееет! Да вычто? Этож мега лаг.
Юзайте тупо НЕ Blitz3d и тормозов не будет
В умелых руках блиц творит чудеса, кто жалуется на глюки/лаги просто не умеет им пользоваться/не знает его особенностей.

Gector 30.10.2010 15:12

Ответ: Вопрос-Ответ (для новичков)
 
Частично согласен с DeeJex. Блиц конечно чудес не творит и особенности у него, надо сказать, весьма сомнительные. Просто надо понимать, что не для каждой игры он сгодиться. Выбирать движок-то нужно исходя из дизайна. К примеру Stone Of Destiny. Тот же блиц. А игра висела в топах бигфиша. Для стрелялок он не очень. А вот пошаговые какие-нибудь или казуалки вполне потянет.


LLI.T.A.L.K.E.R.
Делал такие вещи. Слушай Moka). Только так и возможно. Hideentity - лесом. Проверка к дистанцией тоже норм способ. Только если хочешь чтобы пуля пролетала "подмышкой" (к примеру))) здесь он не подойдет.

DeeJex 04.11.2010 00:27

Ответ: Вопрос-Ответ (для новичков)
 
За меня все скажет скриншот:

upd
Не понимаю что это за хрень, никак не получается исправить :(

Colossus 04.11.2010 04:53

Ответ: Вопрос-Ответ (для новичков)
 
ну думаю Команда разработчиков Xors3d выпустит Блицу достойную замену)) если сейчас много чего полезного реализовано)) то в дальнейшем думаю Хорс станет самостоятельным движком со всякими полезными фичами ))

moka 04.11.2010 20:16

Ответ: Вопрос-Ответ (для новичков)
 
Он и так вполне самостоятельный.
Но про рост, тут спорно. Развивать ту структуру которая сейчас у Ксорса, я лично не вижу смысла. Нужно двигаться вперёд, и смотреть на более современные структуры построения движков.

LLI.T.A.L.K.E.R. 05.11.2010 00:19

Ответ: Вопрос-Ответ (для новичков)
 
Цитата:

Сообщение от DeeJex (Сообщение 166988)
За меня все скажет скриншот:

upd
Не понимаю что это за хрень, никак не получается исправить :(

Может:
pxBodyCreateHull(tmp_m,4.0) - хрень BodyCreateHull(mesh%,mass# = float)\

% - это целое число
# - число с точкой

Randomize 05.11.2010 00:45

Ответ: Вопрос-Ответ (для новичков)
 
Цитата:

Сообщение от LLI.T.A.L.K.E.R. (Сообщение 167110)
Может:
pxBodyCreateHull(tmp_m,4.0) - хрень BodyCreateHull(mesh%,mass# = float)\

% - это целое число
# - число с точкой

:/ И что? Преобразование Int в Float происходит безболезненно. Всегда. Везде.


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

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