On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
администратор




Пост N: 51
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 30.01.07 07:53. Заголовок: Программирование стратегических игр с DirectX 9.0


[реклама вместо картинки]

Тодд Баррон
Программирование стратегических игр с DirectX 9.0

Книга «Программирование стратегических игр с DirectX 9.0» охватывает все темы, которые следует знать, чтобы создать собственную стратегическую игру на С++ с использованием DirectX. Книга выделяет процесс разработки игры и исследует игровые механизмы, управление ресурсами, разработку интерфейса, добавление звукового оформления и многое другое. Более сложные темы включают поиск пути, визуализацию стистем частиц и реализацию сетевого многопользовательского режима.

Прочитав эту книгу вы

  • узнаете об утилитах для управления проектами, которые могут облегчить процесс разработки;
  • изучите основные концепции использования блочной графики для реализации ландшафтов;
  • сможете реализовать высококачественное звуковое сопровождение с помощью интерфейсов DirectMusic и DirectSound;
  • создадите собственный редактор карт и узнаете как генерируются случайные карты;
  • узнаете как использовать ключевые кадры и анимационные наборы для анимации трехмерных объектов;
  • поймете как алгоритм А* находит лучший путь на вашей карте;
  • создадите использующие системы частиц спецэффекты, такие как взрывы и дымовые следы.

Исходный код рассматриваемых в книге примеров может быть загружен с сайтов www.wordware.com/files/games и www.lostlogic.com.


Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 55 , стр: 1 2 3 All [только новые]


администратор




Пост N: 52
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 30.01.07 07:58. Заголовок: Re:


Книга в формате CHM

Файлы к книге

Как обычно не осилил алфавитный указатель в конце книги.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 10
Info: Game Developer ;-) in future
Зарегистрирован: 06.05.07
Откуда: Russia, Kursk
Рейтинг: 0
ссылка на сообщение  Отправлено: 16.05.07 00:14. Заголовок: Re:


Книга классная. Перевод лучше оригинала.

CasDev Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 1
Зарегистрирован: 01.07.07
Рейтинг: 0
ссылка на сообщение  Отправлено: 01.07.07 21:03. Заголовок: Re:


скачал примеры из книги выдает ошибки
--------------------Configuration: 123 - Win32 Debug--------------------
Compiling...
Main.cpp
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(31) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(31) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(31) : error C2501: 'pDisplayModeList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(32) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(32) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(32) : error C2501: 'pDeviceInfoList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(47) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(47) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(47) : error C2501: 'pDeviceComboList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(76) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(76) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(76) : error C2501: 'pDepthStencilFormatList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(77) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(77) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(77) : error C2501: 'pMultiSampleTypeList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(78) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(78) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(78) : error C2501: 'pMultiSampleQualityList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(80) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(80) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(80) : error C2501: 'pDSMSConflictList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(81) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(81) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(81) : error C2501: 'pVertexProcessingTypeList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(82) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(82) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(82) : error C2501: 'pPresentIntervalList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(102) : error C2061: syntax error : identifier 'CArrayList'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(103) : error C2061: syntax error : identifier 'CArrayList'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(111) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(111) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(111) : error C2501: 'm_pAdapterInfoList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(126) : error C2143: syntax error : missing ';' before '*'
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(126) : error C2501: 'CArrayList' : missing storage-class or type specifiers
c:\program files\microsoft visual studio\myprojects\123\d3denumeration.h(126) : error C2501: 'm_pAllowedAdapterFormatList' : missing storage-class or type specifiers
Error executing cl.exe.

123.exe - 35 error(s), 0 warning(s)
подскажите как исправить


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 44
Info: Магия, Спорт, Программирование игр.
Зарегистрирован: 23.03.07
Откуда: Inferno
Рейтинг: 0
ссылка на сообщение  Отправлено: 01.07.07 21:28. Заголовок: Re:


Судя по всему это синтаксические ошибки, что бы их исправить мне нужен код, а лучше проект целиком. Ты можешь выложить проект, что бы я мог скачать и посмотреть.
Кстати каким компилятором ты пользуешься?

Per aspera ad astra! Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 140
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 01.07.07 22:00. Заголовок: Re:


buhak пишет:

 цитата:
скачал примеры из книги выдает ошибки



Пожалуйста сообщите, какой именно из примеров вы компилируете, а также установленную у вас версию Visual Studio и DirectX SDK.

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 2
Зарегистрирован: 01.07.07
Рейтинг: 0
ссылка на сообщение  Отправлено: 02.07.07 17:28. Заголовок: Re:


я компилирую пример D3DFrame_Isometric2DTiles, у меня стоит visual c++ 6.0 professional, и directx 9.0 SDK 2007(april) скачаный с http://msdn2.microsoft.com/ru-ru/xna/aa937788.aspx , еще я выложил проект http://slil.ru/24582892 , там я не стал ничего менять запаковал как было в примере и добавил файлы которые он требует и 123 http://slil.ru/24582735

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 141
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.07.07 10:44. Заголовок: Re:


У вас в проекте отсутствуют файлы DXUtil.h и DXUtil.cpp. Скопируйте их в папку проекта (насколько я помню они должны быть где-то в примерах).
Если будут возникать такие же ошибки проверяйте список #include в файле main. (и добавляйте в проект отсутствующие файлы)

Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 3
Зарегистрирован: 01.07.07
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.07.07 18:57. Заголовок: Re:


Спс за ответ я копировал из папки DXFILES файлы DXUtil.h и DXUtil.cpp, и при компиляции мне выдали почти 200 ошибок, тогда я скопировал все файлы которые были вместе d3denumeration.h, d3dapp.h и др. (там были и файлы DXUtil.h, DXUtil.cpp, но другого размера), ошибок стало меньше:
--------------------Configuration: D3DFrame_Isometric2DTiles - Win32 Debug--------------------
Compiling...
d3dapp.cpp
c:\documents and settings\dxsdk\samples\c++\common\src\d3dapp.cpp(841) : error C2065: 'ULongToHandle' : undeclared identifier
d3denumeration.cpp
d3dfont.cpp
d3dsettings.cpp
c:\documents and settings\dxsdk\samples\c++\common\src\d3dsettings.cpp(274) : error C2664: 'DialogBoxParamA' : cannot convert parameter 4 from 'long (struct HWND__ *,unsigned int,unsigned int,long)' to 'int (__stdcall *)(struct HWND__ *,unsigned int
,unsigned int,long)'
None of the functions with this name in scope match the target type
c:\documents and settings\dxsdk\samples\c++\common\src\d3dsettings.cpp(496) : error C2065: 'ULongToPtr' : undeclared identifier
c:\documents and settings\dxsdk\samples\c++\common\src\d3dsettings.cpp(667) : error C2065: 'UlongToPtr' : undeclared identifier
d3dutil.cpp
dxutil.cpp
Main.cpp
Error executing cl.exe.

D3DFrame_Isometric2DTiles.exe - 4 error(s), 0 warning(s)

В папке debug если файл скомпилирован правильно то копилятор ошибки не выдает, а копилирует остальные файлы сделайте плз из файлов *h и *.cpp -> *.obj http://ifolder.ru/2553553 (особенно d3dfile.h d3dfile.cpp )


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 4
Зарегистрирован: 14.06.07
Откуда: РОССИЯ, Санкт-Петербург (Екатиренбург)
Рейтинг: 0
ссылка на сообщение  Отправлено: 03.07.07 21:53. Заголовок: Re:


Я пытался компилить в .NET с DirectX 2007,не канает,компилятор не мог найти утилитные файлы.Поставил директ 2003 (тоже 9),часть пошла,часть отказывается.Вообщем надо поконкретнее эту тему раскрыть.Кстати netlib у форума есть возможность писать код в тегах,ну что б он форматированный был?

Все что я говорю,кроме цитат,есть мое ИМХО. Спасибо: 0 
ПрофильЦитата Ответить



Пост N: 4
Зарегистрирован: 01.07.07
Рейтинг: 0
ссылка на сообщение  Отправлено: 04.07.07 13:17. Заголовок: Re:


stayer дай плз ссылку на директ 2003


Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 142
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 04.07.07 15:29. Заголовок: Re:


stayer пишет:

 цитата:
Я пытался компилить в .NET с DirectX 2007,не канает,компилятор не мог найти утилитные файлы.Поставил директ 2003 (тоже 9),часть пошла,часть отказывается.



вечером посмотрю и отпишусь по результатам. Я тоже думаю, что проблема в различных версиях. Примеры из книги у меня не компилировались, пока я не заменил файлы на те, которые были в установленном у меня DirectX SDK. Вполне возможно, что для DirectX 2007 ситуация несколько изменилась из-за появления DitrecX 10 (я компилил с теми DX, где 10 версии еще не было). с ходу могу предположить, что либо не хватает каких-то новых #include, либо надо переопределить какие-то #define.

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 143
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 04.07.07 15:38. Заголовок: Re:


Кстати вдогонку еще одно замечание. Я не копировал файлы в папку проекта, а менял ссылки на них, чтобы они оставались в папке dxsdk/samples/c++/common. Кроме того в свойствах проекта я включал эту папку в пути поиска нужных файлов.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 5
Зарегистрирован: 14.06.07
Откуда: РОССИЯ, Санкт-Петербург (Екатиренбург)
Рейтинг: 0
ссылка на сообщение  Отправлено: 04.07.07 18:03. Заголовок: Re:


buhak у меня на диске от книги Ламота был 2003.Так не знаю где взять...
netlib там дело в другом,поменялись названия инклудов,и когда начинаешь по цепочке идти уже не птонятно что откуда вызывается,так же поменялись сигнатуры функций,,короче бардак...там полностью код переписывать надо...

Все что я говорю,кроме цитат,есть мое ИМХО. Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 144
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 05.07.07 09:53. Заголовок: Re:


Скачал последнюю версию DirectX SDK (июнь 2007). Будем посмотреть.

Пока могу только сказать, что фреймворк приложения там заменили. Вместо Samples/Common теперь DXUT (кстати, его отсутствие мешало мне компилить примеры из ShaderX 3).

Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 145
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 05.07.07 09:55. Заголовок: Re:


stayer пишет:

 цитата:
Кстати netlib у форума есть возможность писать код в тегах,ну что б он форматированный был?



Тег pre (в квадратных скобках) - моноширинный шрифт с сохранением пробелов и переводов строки. Я им всегда пользуюсь для кода.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 6
Зарегистрирован: 14.06.07
Откуда: РОССИЯ, Санкт-Петербург (Екатиренбург)
Рейтинг: 0
ссылка на сообщение  Отправлено: 05.07.07 10:01. Заголовок: Re:


netlib думается мне может начать переписывать код под DX2007? и потихоньку сюда выкладывать?
Может кто еще подтянется,поможет...

Все что я говорю,кроме цитат,есть мое ИМХО. Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 146
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 05.07.07 14:58. Заголовок: Re:


stayer пишет:

 цитата:
переписывать код под DX2007?



Я пока не уверен, что это надо. В ближайшие дни посмотрю как все компилится с последней версией DX - тогда станет ясно, переписывать все или просто написать несколько советов для достижения совместимости.

А ведь кроме "Стратегических игр" есть еще и "Ролевые игры" и книга Фрэнка Луны по DirectX.

Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 7
Зарегистрирован: 14.06.07
Откуда: РОССИЯ, Санкт-Петербург (Екатиренбург)
Рейтинг: 0
ссылка на сообщение  Отправлено: 05.07.07 21:19. Заголовок: Re:


netlib там те же проблемы.Я ж говорю поменялись сигнатуры функций,простым прописыванием новых библиотек наживаешь себе кучу неприятностей.

Все что я говорю,кроме цитат,есть мое ИМХО. Спасибо: 0 
ПрофильЦитата Ответить
администратор




Пост N: 147
Зарегистрирован: 01.11.06
Откуда: Москва
Рейтинг: 0
ссылка на сообщение  Отправлено: 07.07.07 09:26. Заголовок: Отчет о компиляции


Как я компилировал пример D3DFrame_Isometric2DTiles из книги, используя последнюю версию DX SDK 2007:

1. Скопировал проект, как он есть в файлах книги и попробовал скомпилировать. Получил кучу сообщений об ошибках из-за невозможности открыть включаемые файлы. Поменял пути к включаемым файлам (щелкаешь правой кнопкой по файлу .h в списке файлов проекта, выбираешь Properties и меняешь путь во второй строке на правильный.
2. Добавил пути поиска включаемых файлов и библиотек. Tools - Options - Directories. Для Include Files добавил путь C:\DXSDK\Include. Для Library Files добавил C:\DXSDK\LIB\X86. Обратите внимание, что раньше все библиотеки лежали в LIB, а теперь в зависимости от платформы разделены по двум каталогам - X86 для 32-разрядной и X64 для 64-разрядной.
3. Поскольку в новой версии DX SDK нет фреймворка приложения, который используется в книге, я скопировал его из более ранней версии SDK (это папка DXSDK\Samples\C++\Common). Если у вас нет этой папки, скачайте ее по ссылке http:://netlib.narod.ru/common.zip. Потом я добавил путь к заголовочным файлам в проект Project - Settings - C/C++, выбираем в поле Category Preprocessor, и в поле Additional include directories вводим C:\DXSDK\Samples\C++\Common\Include.
4. Кажется все настроено, попробуем скомпилировать. Опа - мы получили те же сообщения об ошибках, которые здесь уже обсуждались.

Compiling...
d3dapp.cpp
c:\documents and settings\dxsdk\samples\c++\common\src\d3dapp.cpp(841) : error C2065: 'ULongToHandle' : undeclared identifier
d3denumeration.cpp
d3dfont.cpp
d3dsettings.cpp
c:\documents and settings\dxsdk\samples\c++\common\src\d3dsettings.cpp(274) : error C2664: 'DialogBoxParamA' : cannot convert parameter 4 from 'long (struct HWND__ *,unsigned int,unsigned int,long)' to 'int (__stdcall *)(struct HWND__ *,unsigned int
,unsigned int,long)'
None of the functions with this name in scope match the target type
c:\documents and settings\dxsdk\samples\c++\common\src\d3dsettings.cpp(496) : error C2065: 'ULongToPtr' : undeclared identifier
c:\documents and settings\dxsdk\samples\c++\common\src\d3dsettings.cpp(667) : error C2065: 'UlongToPtr' : undeclared identifier
d3dutil.cpp
dxutil.cpp
Main.cpp
Error executing cl.exe.

Эти ошибки возникают из-за того, что в новой версии SDK нет файла basetsd.h. Я скопировал его в папку Common и в файл main.h добавил#include "basetsd.h". Если вы скопировали фреймворк по приведенной выше ссылке, там уже есть basetsd.h.

5. Компилим снова. Все проходит успешно, но при компоновке не находится библиотека d3dx9dt.lib. Копируем его из старого SDK в новый (папка DXSDK\LIB\X86). Компилируем снова - ВСЕ ЗАРАБОТАЛО.


Спасибо: 0 
ПрофильЦитата Ответить





Пост N: 45
Info: Магия, Спорт, Программирование игр.
Зарегистрирован: 23.03.07
Откуда: Inferno
Рейтинг: 0
ссылка на сообщение  Отправлено: 07.07.07 09:59. Заголовок: Re:



 цитата:
2. Добавил пути поиска включаемых файлов и библиотек. Tools - Options - Directories. Для Include Files добавил путь C:\DXSDK\Include. Для Library Files добавил C:\DXSDK\LIB\X86. Обратите внимание, что раньше все библиотеки лежали в LIB, а теперь в зависимости от платформы разделены по двум каталогам - X86 для 32-разрядной и X64 для 64-разрядной.


А зачем так сложно? Можна было просто скопировать заголовочные файлы в C:\Microsoft Visual Studio 8\VC\PlatformSDK\Include и lib файлы в C:\Microsoft Visual Studio 8\VC\PlatformSDK\Lib. И главное не нужно добавлять пути.

Per aspera ad astra! Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 55 , стр: 1 2 3 All [только новые]
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 1
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет