PMG

Форумы по созданию игр
Текущее время: 19 апр 2024 10:08

Часовой пояс: UTC + 3 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Справочник на русском по DirectX(Shaders, Sprites, ODE)
СообщениеДобавлено: 18 июн 2005 23:32 
Не в сети
Опытный
Аватара пользователя

Зарегистрирован: 11 дек 2004 22:33
Сообщения: 112
Откуда: Ханты-Мансийск
Где можно откопать справочник на русском по DirectX - Язык C++. Мне бы узнать как там делать такие фишки как подключение шейдеров или работа со спрайтами для спецэфектов. Еще скажите как мне подключить библиотеку ODE, чтобы в проекте физика просчитывалась.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 20 июн 2005 08:55 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Спаравочник по DX не видел на русском ;((.
По шрейдерам и спрайтам есть не плохая книга:
Wordware Publishing - Introduction to 3D Game Programming with DirectX 9.0.pdf.rar
webfile.ru/359056
Wordware Publishing - Introduction to 3D Game Programming with DirectX 9.0.source code.zip
webfile.ru/359071

Описание ODE есть на сайте:
http://pmg.org.ru/gamedev/ode_ru.zip

Сам ODE не подключал, но мне кажется, что работа с ним сильно зависит от твоего интерфейса работы с объектами 3D. Из того что я видел мне понравилось как сделано в Blender. Там заданы вначале абстрактные классы типа:
Код:
/**
*   Physics Environment takes care of stepping the simulation and is a container for physics entities (rigidbodies,constraints, materials etc.)
*   A derived class may be able to 'construct' entities by loading and/or converting
*/
class PHY_IPhysicsEnvironment
{
   public:
      virtual      ~PHY_IPhysicsEnvironment();
      virtual   void      beginFrame() = 0;
      virtual void      endFrame() = 0;
      /// Perform an integration step of duration 'timeStep'.
      virtual   bool      proceedDeltaTime(double curTime,float timeStep)=0;
      virtual   void      setFixedTimeStep(bool useFixedTimeStep,float fixedTimeStep)=0;
      //returns 0.f if no fixed timestep is used
      virtual   float      getFixedTimeStep()=0;


      virtual   void      setGravity(float x,float y,float z)=0;

      virtual int         createConstraint(class PHY_IPhysicsController* ctrl,class PHY_IPhysicsController* ctrl2,PHY_ConstraintType type,
         float pivotX,float pivotY,float pivotZ,
         float axisX,float axisY,float axisZ)=0;
      virtual void      removeConstraint(int constraintid)=0;

      virtual PHY_IPhysicsController* rayTest(PHY_IPhysicsController* ignoreClient, float fromX,float fromY,float fromZ, float toX,float toY,float toZ,
                              float& hitX,float& hitY,float& hitZ,float& normalX,float& normalY,float& normalZ)=0;


      //Methods for gamelogic collision/physics callbacks
      //todo:
      virtual void addSensor(PHY_IPhysicsController* ctrl)=0;
      virtual void removeSensor(PHY_IPhysicsController* ctrl)=0;
      virtual void addTouchCallback(int response_class, PHY_ResponseCallback callback, void *user)=0;
      virtual void requestCollisionCallback(PHY_IPhysicsController* ctrl)=0;
      virtual PHY_IPhysicsController*   CreateSphereController(float radius,const PHY__Vector3& position) =0;
      virtual PHY_IPhysicsController* CreateConeController(float coneradius,float coneheight)=0;
      
};

А потом на ODE и Sumo реализовано уже конкретные методы. По моему очень правильный подход.

Причем все разделено на среду, физический контроллер объекта и состояние движения.

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 20 июн 2005 13:39 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Тут увидел небольшой справочник по DX в книге Горнакова - http://www.ozon.ru/?context=detail&id=1 ... =magicwolf.
У нее есть продолжение - http://www.ozon.ru/?context=detail&id=2 ... =magicwolf (Инструментальные средства программирования и отладки шейдеров в DirectX и OpenGL).

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
 Заголовок сообщения:
СообщениеДобавлено: 21 июн 2005 16:11 
Не в сети
Гуру
Аватара пользователя

Зарегистрирован: 03 авг 2004 10:37
Сообщения: 2694
Порылся тут по инету, еще нашел не много либ для физики:

http://www.tokamakphysics.com/ - Tokamak Game Physics SDK
http://www.novodex.com/ - Novodex - Game Development Technology
http://meqon.com/ - Swedish Rigid Body Dynamics SDK
http://opende.sourceforge.net/ - Open Source Physics SDK
http://physicsengine.com/ - Newtoon Pjysics Game Engine
http://www.oxforddynamics.co.uk/ - An open source car and simple rigid body simulation library

_________________
С уважением, Сергей


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 4 ] 

Часовой пояс: UTC + 3 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 6


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения

Найти:
Перейти:  
cron
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB