Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DX3D


Страницы:   1 2

TButton ©   (2003-08-05 08:34:00) 

Можно маленький тьютор по исп. Delphix D3D.
1. как создать простейшую сцену
2. как работать с камерой
3. и с чем ваще ето все едят.

если есть ссылки на что-то подобное - буду благодарен.


Vertex   (2004-02-17 01:06:00) [1]

дада иногда... убеждать в том что ты и так понимаешь не буду
если успокоит то для меня делфя тоже очень дорога и вижуал не люблю, но стараюсь объективно смотреть на тему


cyborg   (2004-02-16 10:51:00) [2]

[29] Sapersky ©
А какая разница? И там и там одинаково делается, только типы данных иногда по разному называются.


Sapersky   (2004-02-16 10:49:00) [3]

На прошлой неделе я диск купил DirectX 9 SDK, никакого визуала там нет ;)

А примеры что, на Delphi? :)


cyborg   (2004-02-16 10:38:00) [4]

[27] Vertex
На прошлой неделе я диск купил DirectX 9 SDK, никакого визуала там нет ;)


Vertex   (2004-02-16 03:08:00) [5]

Repeat если руки такие ровные писать надо на асме
A22 имел в виду, что платформа Visual'а имеет преимущество в том, что производители поставляют сдк именно к ней


NailMan   (2004-02-15 23:55:00) [6]

Нет это сарказм. Просто твой постинг A22   (13.02.04 03:53) [22]- очередной намек на holey wars.
Для игр C++ и Delphi равноценны при наличии головы и прямых рук.


A22   (2004-02-13 17:32:00) [7]

NailMan
по-твоему VC++ равноценен VB /Exel в области программирования игр?


NailMan   (2004-02-13 09:29:00) [8]

A22
И заодно к Visual Basic и Exel(на нем тоже игры пишут)


cyborg   (2004-02-13 08:55:00) [9]

[22] A22   (13.02.04 03:53)
А может ещё и ключи от квартиры, где деньги лежат?


A22   (2004-02-13 03:53:00) [10]

а заодно и на Visual C++


A22   (2004-02-13 03:52:00) [11]

вообще практически все, что вы обсуждали, есть в примерах Microsoft, входящих в SDK под DirectX. так что если чего не получается - прямая дорога к эти примерам


Sapersky   (2004-02-12 10:57:00) [12]

можно ли одновременно с трехмеркой (всякие там перемещающиеся объекты - у меня сферы) выводить на экран двумерную графику

Если это всё ещё RM, то см. DirectDraw и С.Трухильо. Обычный блиттинг нормально работает. Если DX8-9, см. ответ Nailman'а.


NailMan   (2004-02-12 10:00:00) [13]

m-AAA-d ©
конечно можно - создается VB с форматом XYZRHW + diffuse+tex1 и в него заносишь точки треугольников(trianglelist) с координатами(xyz и uv) в экранной системе отсчета. Ну а далее выводишь их одним Drawprimitive.

Вобщем
http://www.cyborghome.ru/nailman/zakroma/sources/d3dfonts.zip

Архив содержит модуль с классом - GUIBuffer-ом. Который и использует эту технологию. Также в архиве лежит модуль с классом шрифтов используемых в моей игре, которые также построены на этой технологии(правда чуть-чуть по другому использует). Самих шрифтов пока не прилагаю - дома забыл.


m-AAA-d   (2004-02-11 14:03:00) [14]

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


Sapersky   (2004-02-10 10:14:00) [15]

Я имею в виду современность D3DRM. Его развитие заканчивается на DX6... причём невозможно использовать некоторые функции даже этой версии (напр., мультитекстурирование). Загрузить/покрутить модельку - тут RM ещё более-менее подходит, но когда пытаешься сделать что-нибудь продвинутое (динамически изменяющуюся модель, текстуры с альфа-прозрачностью) - начинаются проблемы...
В DX8-9 MS в качестве замены RM включила в библиотеку D3DX средства для работы с моделями (см. пример NailMan'а). Вообще получилось несколько сложнее, чем в RM, но зато при необходимости можно работать на низком уровне (копаться непосредственно в полигонах), плюс поддержка современных ускорителей.
Кстати, если сферы в данном случае изображают звёзды, то это немного извращение, даже для RM. В нём, точно помню, есть спрайты, в смысле биллборды - квадраты из двух треугольников, всё время повёрнутые к камере. Как именно делается - у Н.Томпсона должно быть...


m-AAA-d   (2004-02-09 10:23:00) [16]


> Это по DirectDraw. А по D3DRM см. "Секреты программирования
> трёхмерной графики под Windows 95" Найджела Томпсона.
- могет быть, могет быть... но директДДД там тоже неплохо описан. щас Найджела тоже сохраню и почитаю.
а насчет современности технологии: винды никуда не делись, а директХ продолжает удивлять нас своими новыми версиями, так что... ;) технология живет и развивается.
с текстурами пока не прет, впрочем у меня было маловто времени, чтобы поразбираться


m-AAA-d   (2004-02-06 17:34:00) [17]

код у меня такой:

for i:= 1 to GalaxyMap.Count do begin
  s:= ExtractFilePath(Application.ExeName) +
      GalaxyMap.Star[i-1].Texture;
//---  Setting up MeshBuilder  ---------------------------
  DXDraw.D3DRM.LoadTexture(PChar(s), Texture);
  MeshBuilder.SetColor(D3DRGB(1, 1, 1));
  MeshBuilder.SetTexture(Texture);
//---  Setting up MeshFrames 1st level (stars)  ----------
  DXDraw.D3DRM.CreateFrame(MeshFrame, dMeshFrame);
  dMeshFrame.SetPosition(MeshFrame, GalaxyMap.Star[i-1].X,
    GalaxyMap.Star[i-1].Y, GalaxyMap.Star[i-1].Z);
//---  Create wrap  --------------------------------------
  dMeshFrame.AddVisual(MeshBuilder);
  CreateWarp(D3DRMWRAP_CHROME, MeshBuilder, dMeshFrame);
  dMeshFrame:= nil;
end; MeshBuilder:= nil;

седня попробую проверить совет данный мне Sapersky - попробую текстуру присваивать непосредственно фрейму. завтра отпишусь.


Sapersky   (2004-02-06 11:02:00) [18]

замечательная книжка Стена Трухильо "Программирование графики в ДиректДДД

Это по DirectDraw. А по D3DRM см. "Секреты программирования трёхмерной графики под Windows 95" Найджела Томпсона.
Кстати, упомянутая версия Win в данном случае - хороший повод задуматься о современности выбранной технологии :)


NailMan   (2004-02-06 10:21:00) [19]

как ты отрисовываешь сферы? в виде чего ты из юзаешь? ID3DXMesh или вручную через VB/IB?

главный принцип отрисовки с текстурами(на примере ID3DXMesh):

//устанавливаем матрицу трансформаций
Dev.SetTransform(D3DTS_WORLD, matrix);
for i:=0 to MaterialCount-1 do
begin
 //устанавливаем материал
 Dev.SetMaterial(Material[i]);
 //устанавливаем текстуру для материала i
 Dev.SetTexture(0,Texture[i]);
 //рендерим меш
 mesh.Drawsubset(i);
end;
end;

соответсвенно примерно так должен выглядеть метод Render у твоих сфер.


m-AAA-d   (2004-02-05 16:49:00) [20]

NailMan
извини, но может быть ты сможешь мнепомочь? тема такая: создаю несколько сфер в одном фрейме, заставляю их вращаться (все вместе разумеется), но каждой сфере назначаю свою текстуру. в результате же я получаю вращающиеся сферы, но закрашенные той текстурой, что грузилась последняя. можно сделать чтонить, чтобы добиться нужного мне результата?


Страницы:   1 2

Наверх

Титульная страница Поиск, карта сайта Написать письмо