![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
ODE-бильярдик Простенький Демка
Куу © (2005-03-09 01:41:00)Гляньте кому интересно. Экзэшник :
http://dcegame.narod.ru/billiyard.html
Смысл игры - гонять шары пока все не забьёшь. Как сделать игру по сети, я просто не очень понимают. Надеюсь, пока не очень.
Куу (2005-03-17 05:57:00) [1]Мне вроде помогли с тенями. И вроде стало лучше.
Куу (2005-03-17 01:38:00) [2]
> Ну поставь тогда плиз DepthPrecision в dp16bits и возможность
> выбрать режим VisibilityCulling. Можно например это сделать
> в каком нибудь подменю, типа "отладка".
Я поигрался с ними поставив у себя 16 бит, но это ничего не дало.
Я в ньюсгруппе пытаюсь прояснить этот вопрос. Возможно они мне помогут.
> Alek Aaz (16.03.05 11:13) [29]
> Утяжели шары. Первые бильярдные игры - сплошняком чистая
> геометрия.
А что изменится то ? Если бьёш в край шара, то он будет закручиваться независимо от массы.
И потом не геомертия ещё и потому, что на отскок влияет и сила удара. Если по своему шару ударить сильно, то он как-бы увлекает шары по которым бьёт за собой.
Понажимай Ctrl+Z в игре, и в одной и той же позиции попробуй бить с разной силой.
Alek Aaz (2005-03-16 11:13:00) [3]Да я даже не знаю где лунки находятся.
По уму - обязан знать. Ты ж не с закрытыми глазами играешь.
Это всё на словах легко, а на деле шары крутятся и потому геометрией не обойдёшься.
Утяжели шары. Первые бильярдные игры - сплошняком чистая геометрия.
И если удар не прямой, да ещё и далёкий то не попадёшь из-за этого.
Ну так и интерес появится :)
Куу (2005-03-16 06:37:00) [4]
> Alek Aaz (16.03.05 04:26) [27]
> Выбираешь шар, лунку в которую хочешь его загнать
Да я даже не знаю где лунки находятся. Просто если шар находится на столе и ниже ватер-линии, то значит попал в лунку.
> Выбираешь шар, лунку в которую хочешь его загнать, способ
> "от борта" или "чисто" вычисляешь положение, где должен
> оказаться бьющий шар и угол, под которым он должен там быть.
> Выбираешь бьющий шар - биток или третий шар.
Это всё на словах легко, а на деле шары крутятся и потому геометрией не обойдёшься. И если удар не прямой, да ещё и далёкий то не попадёшь из-за этого.
Была у меня идея саму ODE использовать для искусственного интеллекта. Чтобы AI сначала сам для себя поударял немного по шарам, не отображая это. И самый удачный удар потом показывал. Но это отожрёт слишком много времени. Наверно столько же, сколько и реальный удар.
Alek Aaz (2005-03-16 04:26:00) [5]>Может из-за того, что карта не 32 бита ? ...
>В общем жалко.
Жила :)Ну поставь тогда плиз DepthPrecision в dp16bits и возможность выбрать режим VisibilityCulling. Можно например это сделать в каком нибудь подменю, типа "отладка".
Теперь я стал думать об искусственном интеллекте, и прихожу к выводу, что врядли удасться его сделать. Ведь тут же реальная физика, по формулам точный удар не просчитаешь. Прямые удары компьютер ещё можно научить забивать, но что делать с не прямыми ? Ведь их большинство.
Почему? Бильярд - это больше геометрия. Ничего сложного. "Финты" с возвратом шара, его закручиванием - геометрия+физика, но как только биток ударит по шару дальше опять работает геометрия.
Выбираешь шар, лунку в которую хочешь его загнать, способ "от борта" или "чисто" вычисляешь положение, где должен оказаться бьющий шар и угол, под которым он должен там быть. Выбираешь бьющий шар - биток или третий шар.
И т.д.
Куу (2005-03-16 02:03:00) [6]
> Alek Aaz (15.03.05 08:24) [25]
> Видимо у меня почему-то глючно отображается объекты. Дальние
> отображаются как ближние.
Может из-за того, что карта не 32 бита ? Кстати, я заметил, что тормоза на малой битности из-за теней. Если их отключить, фпс становится нормальным.
> Мож исходник дашь?
Не дам. Я старался делал. ... В общем жалко.
> Играйся с коэффициентом сцепления шара с сукном стола. Как
> он там в ODE обзывается... Нужно увеличить "массу" шара
> и уменьшить сцепление...
Я уже поигрался, и подобрал подходящий коф. сцепления. Вчера только закачал http://dcegame.narod.ru/billiyard.html( уже четвёртый вариант ). Теперь шары закручиваются только так.
Кстати, играть стало слишком легко. Если правильно подкрутить шар, то можно и по 3 штуки за раз в лузу загонять. И вообще без анду и без миссов все полностью в лузы укладывать.
> Лично я намеревался прикладывать силу не к бьющему шару(битку).
> К кончику кия "прикрепить" "маленький" шар и им бить по
> битку
А я сделал через функцию dBodyAddForceAtPos . Удар приходится в светящееся пятнышко, по ноправлению от центра камеры.
Кий в принципе нужен только, чтобы "видить" по нему силу удара.
Теперь я стал думать об искусственном интеллекте, и прихожу к выводу, что врядли удасться его сделать. Ведь тут же реальная физика, по формулам точный удар не просчитаешь. Прямые удары компьютер ещё можно научить забивать, но что делать с не прямыми ? Ведь их большинство.
Alek Aaz (2005-03-15 08:24:00) [7]Видимо у меня почему-то глючно отображается объекты. Дальние отображаются как ближние. Мож исходник дашь?
Куу (14.03.05 01:21) [19]
Кстати, в бильярде есть такой удар, когда бьют под низ, и свой шар после удара назад отказывается. Непойму как его сэмулировать. Не откатываются назад и всё тут. Хотя сила прикладывается в самый его низ. Может тут ещё какая хитрость есть ?
Играйся с коэффициентом сцепления шара с сукном стола. Как он там в ODE обзывается... Нужно увеличить "массу" шара и уменьшить сцепление...
Лично я намеревался прикладывать силу не к бьющему шару(битку). К кончику кия "прикрепить" "маленький" шар и им бить по битку, а тот уж полетит в кучу шаров. При "нормальном" ударе ось по которой будет бить "кий" должен проходить через центр битка, при "крученом" ось удара смещать относительно центра битка.
Куу (2005-03-15 01:36:00) [8]
> parovoZZ ©
> Мона тупеёший вопрос: что такое ODE ?
> А что такое движёк? Это код игры или библиотека?
Это библиотека ode.dll, коготая прилагается к бильярду, на случай, если у кого её нету.
Ты её указываешь какие создать объекты, и какую сделать гравитацию, и вызываешь её переодически, а она тебе возвращает текущие положения этих объектов. Куда упали, как столкнулись, куда сдвинулись.
Ты со своей стороны можешь эти объеткы двигать, или прикладывать к ним силы, да скорости. Удар по шару - это просто к шару прикладывается сила. А когда выбираешь начать новую игру, шары ставятся на начальную позицию.
parovoZZ (2005-03-14 09:52:00) [9]А что такое движёк? Это код игры или библиотека?
DeadMeat (2005-03-14 09:34:00) [10]Open Dymanic Engine
Физический движек.. Отдельная DLLка.
parovoZZ (2005-03-14 08:09:00) [11]Мона тупеёший вопрос: что такое ODE ?
Alek Aaz (2005-03-14 07:04:00) [12]>Куу (14.03.05 01:21) [19]
>Чтож на заказ и плохо текстурированный ?
Моделлер новичек. Моделька классная, а с текстурами он на тот момент не разбирался. Стекстурировал "по-детски", это-зеленое, это коричневое...
Куу (2005-03-14 01:21:00) [13]
> Alek Aaz (11.03.05 04:44) [17]
> Эхх... был у меня стол... На заказ деланный... Правда не
> очень хорошо текстурированный
Чтож на заказ и плохо текстурированный ?
Я нашёл, кстати, стол. И кий. Вставил в бильярд. Стало покрасивше. Теперь ищу комнату с интерьером, чтобы играть не в космосе, а в помещении. Есть ли комната на примеете ?
> Sphinx © (11.03.05 15:21) [18]
> У меня вообще не было...пол часа "терзал" но не словил этого
> зверя :)
Хорошо.
Кстати, в бильярде есть такой удар, когда бьют под низ, и свой шар после удара назад отказывается. Непойму как его сэмулировать. Не откатываются назад и всё тут. Хотя сила прикладывается в самый его низ. Может тут ещё какая хитрость есть ?
Sphinx (2005-03-11 15:21:00) [14]> То есть у тебя Access Voilatoin было на чём то другом, или
> вообще небыло ?
У меня вообще не было...пол часа "терзал" но не словил этого зверя :)
Alek Aaz (2005-03-11 04:44:00) [15]Эхх... был у меня стол... На заказ деланный... Правда не очень хорошо текстурированный, но зато с "шаросборником" :) Для "американки"... поищю в закромах, кажись не удалил еще...
Куу (2005-03-11 01:56:00) [16]
> dimodim_REAL (10.03.05 09:50) [10]
> Как сделать
> > игру по сети, я просто не очень понимают. Надеюсь, пока
>
> > не очень.
> А она нужна?
А как же ? Интересно же по интернету с кем нибудь поиграть. Только вот я не знаю, как осуществлять связь с кем нибудь по ip-адресу. И как синхронизовывать ODE на разных компьютерах. Боюсь, что один и тот же удар, на разных компах может дать разные результаты.
Куу (2005-03-11 01:50:00) [17]
> DeadMeat © (10.03.05 09:50) [11]
> За все время пока у меня ни разу не моросили
У меня много где. Например, демка, где Тринити с плащом. Я думал, что это стандартный глюк.
> Вот как раз мышью и не удобно... Слишком резко камера сменяется,
> когда кликаешь на шар.
Если честно, то даже не задумывался обэтом. Можно будет потом плавность поворота добавить.
> Да и надо какой нить гаудж сделать.. Для удара.
Что за гаудж ?
> Я про то, что нельзя снизу посмотреть на доску
В смысле сверху ? Тоже не проблема сделать.
> Alek Aaz (10.03.05 12:07) [12]
> 16 бит. На 815 максимум 24.
Я попробовал, при 16 бит - действительно жуткие тормоза.
Демка TheBall, кстати, даже не запускается если меньше 32 бит. Так, что это вопрос к GLScen'ьщикам. Или надо будет поэксперементировать.
> Sphinx © (10.03.05 16:21) [13]
> Я про то что Access Voilatoin у меня не выскакивало, специально
> несколько шаров за стол выбросил...в чем-то другом может
> ошибка ?
То есть у тебя Access Voilatoin было на чём то другом, или вообще небыло ?
Я обновил программу.
http://dcegame.narod.ru/billiyard.html
Теперь есть звук ( правда левый, ну какой нашёл ), есть Undo, и закрутка. То есть смотря в какой бок шара бьёшь, в ту сторону он и закручивается.
Поиски стола и игровой комнаты продолжаются. :)
DeadMeat (2005-03-10 19:28:00) [18]Ну дык на то оно и AV.. Что не всегда выскакивает... ;)
У меня тоже не всегда... Пару раз всего.. Да и запускал не много.
---
...Death Is Only The Begining...
Sphinx (2005-03-10 16:21:00) [19]> Это если мимо лунки. А если в лунку, то засчитывается.
Блин :) ну ясно дело что если мимо - то "пропавший" а если в лунку - то в очки :)
Я про то что Access Voilatoin у меня не выскакивало, специально несколько шаров за стол выбросил...в чем-то другом может ошибка ?
Alek Aaz (2005-03-10 12:07:00) [20]Куу (10.03.05 03:37) [8]
>> Alek Aaz (09.03.05 05:46) [1]
>> У меня конечно карта глючнутая (815 чипсет), но шары не
>> отображаются
>Странно. А сколько цветов выставлено ? 32 бита ?
16 бит. На 815 максимум 24.
Кстати. у тебя работает демка из "AdvDemos\TheBall" из GLScene ?
Нет ее у меня... пока...