Игра на C#+OpenGL - вопрос №278047

Помогите!!! платформа C#+ OpenGL… имеются уже 3d модели экспортированные в программную среду… надо создать физику полета мяча от ноги футболиста( примитивную ) а также так чтобы футболист двигался с мячом… небольшую анимацию для движения футболиста… буду очень благодарен кто поможет...



Дополнение автора от 27.05.12 23:22:28

Формат для моделей Ase. Библиотеки FreeGlut, Devil, OpenGL. На сцене к сожалению нет пока никаких движений… это ка краз нужно создать а для начала хотелось бы узнать как реализовать такую композицию правильно… у меня имеется модель мяча и футболиста, мне нужно загрузить их на сцену таким образом что бы в дальнейшем использовать их для создания движения тоесть футболист движется и расстается с мячом ударяя его в ворота… при э

том учесть некоторые условия для полета мяча чтобы он был более менее реалистичен...



Дополнение автора от 27.05.12 23:26:13

изображение из вопроса



Дополнение автора от 27.05.12 23:27:20

На сцене не все текстуры наложено но это будет упорядочено позже… для меня главное создать движения на данной сцене и можно достаточно примтивные



Дополнение автора от 27.05.12 23:52:28
объявляемanModelLoader Stadium = null;<br /> anModelLoader Player = null;<br /> anModelLoader Ball = null;загружаемStadium = new anModelLoader();<br /> Player = new anModelLoader();<br /> Ball = new anModelLoader();<br /><br /> Stadium.LoadModel("Stadium.ASE");<br /> Ball.LoadModel("Ball.ASE");<br /> Player.LoadModel("Player.ASE");Код загрузки в отдельном файле он достаточно большой… там загружаются вершины полигоны… текстурыТеперь отрисовать правильно бы… а то у меня вот такое там<br /><br />Gl.glLoadIdentity();<br /> Gl.glColor3ub(0, 0, 0);<br /><br /> Gl.glPushMatrix();<br /> <br /> Gl.glTranslatef(0, -0.015f, -0.35f);<br /> Gl.glRotated(-60, 50, 0, 0);<br /> if (Stadium != null)<br /> Stadium.DrawModel();<br /> <br /> Gl.glTranslatef(1, -0.015f, -0.35f);<br /> Gl.glRotated(0, 1, 0, 0);<br /> if (Ball != null)<br /> Ball.DrawModel();<br /> Gl.glPopMatrix();<br /> Gl.glPopMatrix();<br /> Gl.glFlush();<br /> <br /> AnT.Invalidate();<br /> } 

Дополнение автора от 28.05.12 00:01:17

тогда вот ссылки на код на форме и на код загрузки модели

http://rghost.ru/38323009

http://rghost.ru/38323019



Дополнение автора от 28.05.12 00:05:59

вот весь проект… там много недочетов и в 3D моделях да и в коде..

http://rghost.ru/38323111



Дополнение автора от 28.05.12 09:40:07

Модели предоставить в формате ase? или какие они в 3d maxе? насчет использования такой библиотеки… скачал что под руку попалось)… а насчет физики почитав понял, что надо использовать уравнение движение параболы...

тоесть получается мы объявим переменные Для начальных координат мяча

X=0 Y=0 Z=0;

g 9.8

угол a по дкаким углом брошен мяч

t время

v скорость начальная

а дальше в функции опишем расчет координат получившихся

x=v*t*cos a 
y=v*t*sin a — g*t*t/2

но это для двухмерного мира… как переложить это в трехмерный те нужна координата 

ну а потмо мне нужно это переложить для объектов

27.05.12
7 ответов

Лучший ответ по мнению автора

с тебя модель

проект я собрал, но модели нет

а вообще здесь ключевое слово Tao

ты используешь библиотеку Tao — одну единственную

так вот в ней есть полноценная поддержка физики - Tao.PhysFs

осваивай ))

и все получится

ps хотя я бы не стал опираться на такую старую библиотеку

откуда такой выбор? ты хочешь совместимости с linux?

почему старая — последняя редакция ровно 3 года назад

http://sourceforge.net/projects/taoframework/files/The%20Tao%20Framework/ 

для OpenSource проекта 3 года без движения… это плохой признак

pps модель нашлась )))

а работа с физикой в основах описана тут

http://www.esate.ru/page/uroki-OpenGL-c-sharp/

28.05.12
Лучший ответ по мнению автора

Другие ответы

поясните на счет:

— OpenGL — какие конкретно библиотеки используете?

— в каком формате предоставлены 3d модели?

— «уже экспортированы в програмную среду» — Вы уже можете воспроизвести 3d сцену с простейшими движениями?

ps варианты по «физике» зависят от того что уже у Вас есть

27.05.12

ну для начала давайте уточним — если модель 3д каркасная с рендерингом поверхностей на лету, то примитивы по движению обьектов будут управляться той же библиотекой, которая выполняет рендеринг

тогда останется подобрать библиотеку по физике и примеры по ней

по этому вопрос сводится к следующему — чем Вы открывает ase? и подразумевает ли этот формат динамику вообще?

ps OpenGL это вообще то API а не библиотека )))

27.05.12

вообще то текст не читаем (((

а еще — самое важное в операторах

using

)))

27.05.12

а еще лучше архив проекта + библиотеки (или ссылки) + хоть одну модель

смогу подсказывать предметно

ps вся связь через сайт, это строго

27.05.12

скачиваю, но посмотрю уже завтра

на будущее — можно вложения в письмо по внутренней почте сайта ))

есть еще чат

эксперт не может обратится первым, но клиент может обратиться к эсперту

если открыть профиль эксперта — будут кнопки типа «обратиться в чат» и «написать письмо»

об огрехах в коде… — не боги горшки обжагают ;)))

28.05.12

читай ответы внимательно:

1 — я делал примечание выше — модели нашлись

2 — для работы с физикой в этом фреймворке есть конкретный раздел Tao.PhysFs, тебе не надо самостоятельно вычислять все координаты. изучай эту библиотеку...

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

3 — я тебе кинул ссылку на учебный материал http://www.esate.ru/page/uroki-OpenGL-c-sharp/ 

 

28.05.12
Посмотреть всех экспертов из раздела Технологии > C/C++
Пользуйтесь нашим приложением Доступно на Google Play Загрузите в App Store