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

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

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

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

Ответ
 
Опции темы
Старый 08.02.2008, 17:03   #16
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

Ну это пули юзера.
А пули ботов ограничены по времени.
(но я думаю перевести это дело на расстояние, не нравится мне эта куйня с временем)

Добавил:
Пересмотрел. Шо это за фигню ты написал? Конечно не проще.
У меня в конце прописано удалять пулю если o\delet=1
Это бывает в 2 случаях: 1. если пуля улетела далеко от юзера. 2 если пуля подлетела близко к боту.
А у тебя получается что пуля должна удаляться только тогда когда подлетит к боту.
Ты мне код не проще сделал, а наоборот усложнил, придётся отдельно дописывать удаление при дистанции от юзера. Тобиш пулю удалять надо в двух разных случаях, а не только когда o\delet равен одному.
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube

Последний раз редактировалось Crystal, 08.02.2008 в 17:13.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 17:06   #17
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

впринципе да. exit-ом можно решить. но он вроде выведет тока за один цикл. а надо за оба.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 17:10   #18
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

Тогда ставим ещё одно условие, на проверку наличия объектов, если отсутствуют - лепим Exit.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 17:18   #19
tormoz
Гигант индустрии
 
Аватар для tormoz
 
Регистрация: 14.12.2005
Сообщений: 2,785
Написано 1,183 полезных сообщений
(для 4,437 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

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

счетчик времени :
о\тайм=о\тайм+1
ент=ЕнтитуКоллидед(о\ент,тип_бот)
ент2=ЕнтитуКоллидед(о\ент,тип_уровень)
Иф ент ор ент2
о\тайм=401
ендиф


Иф о\тайм=>400
Иф о\тайм=401
БольшойБум(о\ент)
ЕндИф
ФрееЕнтити о\ент
Делете о
ЕндИф
__________________

Последний раз редактировалось tormoz, 08.02.2008 в 17:24.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 17:23   #20
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

Тогда ставим ещё одно условие, на проверку наличия объектов, если отсутствуют - лепим Exit.
вот. это работать будет.
теперь смотри - мы просто вводим поле обозначающее удаленность объекта, и проводим всякие проверки, потом, в самом конце, если удален стоит метка то удаляем ентити и объект. зато так можно "удалять" пульку в любом месте, ошибки не будт.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 17:54   #21
jimon
 
Сообщений: n/a
Ответ: Вопрос про наболевшее - коллизии.

tormoz
или пули в танках, либо танки в пулях

ой что-то меня ето расмешило


HolyDel
упс, не заметил

Blitzerg
чувак, представь что ты строчку o\delet = 1 замениш на удаление пули
кода меньше ! ... в любом случае ты делаешь ДВЕ проверки
и еще одну проверку o\delet = 1 .. в итоге три проверки ...
а так будет две .. где сложности ? не вижу ...
 
Ответить с цитированием
Старый 08.02.2008, 18:27   #22
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

А если у меня 20 разных видов ботов, ещё земля, ещё дома, ещё предметы.
Чё мне каждый раз писать:

if событие then
FreeEntity o\pulka
Delete o  
end if
????????

Не проще ли мне писать if событие then o\delet=1 ??

Не кажется ли тебе, что я туеву хучу строк экономить буду?
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 18:38   #23
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

Blitzerg, О! Я кстать недавно об этом задумался, и понял, экономия строк, порой - плохо. Смотри, у тебя будет лишнея переменная, А условие, всёравно выполнится
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 18:47   #24
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

уууу!!!
if entitydistance(o\pulka,vrag1) then
FreeEntity o\pulka
Delete o  
end if

if entitydistance(o\pulka,vrag2) then ;вопрос на засыпку. что будет здесь, если выполнится предыдущие условие?
FreeEntity o\pulka
Delete o  
end if

Последний раз редактировалось HolyDel, 08.02.2008 в 19:16.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 19:07   #25
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

Ошипко!
Пулё не найдено, идите накуй.
Думаю такое будет?
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 19:13   #26
HolyDel
 
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений
(для 2,707 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

угу. такое и будет. именно поэтому (а не из за экономии строчек, или экономии памяти) надо завести свою перменную с состоянием "удаленности"

при нынешних 2Гб памяти, потратить жалких 4 байта на пулю - ну это совсем ничего.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 19:14   #27
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

Ну да. Так и есть )
Собсно по этому она там и поставлена.
Про экономию я сморозил.
Просто изложил в теории еслиб предложение джимона работало то это было бы не экономно )
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 19:33   #28
Taugeshtu
scientist.alien
 
Аватар для Taugeshtu
 
Регистрация: 12.02.2007
Сообщений: 2,098
Написано 1,030 полезных сообщений
(для 2,593 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

перебор в данном случае не рулит. Рулит парабола-триггер как mesh, скалящийся в зависимости от угла выстрела (если уж совсем реализм и пули летают по навесной) или же бокс-цилиндр-извращенно_скаленный_шарик с проверкой на коллизию. Особенно в данном случае рулит сторонний физ. двиг.

по поводу реально летящих в данном случае пуль (особенно медленнолетящих) - мы знаем, что пуля летит всю свою траекторию за 700 с буем мс. А дальше проверяем коллизию триггера, если бот словил ее, то проверка на то, сколько процентов траектории (ее максимальная длина также изначально определена) пульк0 пролетела, и если бот стоит примерно ("допуск" обязателен - мс не будут топать точно по n штук после каждой команды!) на этом промежутке - хит по нему, через обжект ессно, удаляем бота и после ставим флажок удаления пульке.
__________________
Public service announcement: вы можете заблокировать отображение сообщений определённого пользователя, добавив его ник в список игнорируемых.
Tau lab.
We LOVE you. We MADE you.
(Offline)
 
Ответить с цитированием
Старый 08.02.2008, 20:42   #29
jimon
 
Сообщений: n/a
Ответ: Вопрос про наболевшее - коллизии.

HolyDel
мне это сводить к знаниям не_программиста или ты издеваешся ?
есно что если я напишу какой-то бред который даже логически
не пашет то и в компиляторе он не запашет
 
Ответить с цитированием
Старый 08.02.2008, 21:19   #30
Crystal
Терабайт исходников
 
Аватар для Crystal
 
Регистрация: 05.07.2007
Сообщений: 5,196
Написано 1,721 полезных сообщений
(для 5,374 пользователей)
Ответ: Вопрос про наболевшее - коллизии.

Какой бред?
Твой вариант кода не предпологает, что пулю надо будет удалять
в множестве различных событий.
Так как если пуля будет удалена при определённом событии, и после этого
будет другая проверка пули а пули то уже нет, то будет ошибка кода,
и игра вылетит.
Холи это какрас и продемонстрировал своим вопросом.
__________________
Проект "Deathbring World - Rangers" и его финансовая поддержка:
https://boosty.to/deathbringrangers

Я на - TWITCH
Канал на YouTube
(Offline)
 
Ответить с цитированием
Ответ


Опции темы

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

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

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
коллизии в 2.5D cheaters-hater 2D-программирование 11 07.07.2009 00:33
Уже наболевшее.. Samarik 3D-программирование 41 20.07.2008 03:22
Вопрос про коллизии TG 3D-программирование 6 09.11.2007 01:39
Коллизии Stalnoy_Gvozd' 3D-программирование 6 30.08.2007 15:56
Вопрос по коллизии Fant 3D-программирование 24 03.11.2005 10:34


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


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