Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > разработка игр, графический дизайн и моделирование > Gamedev - cоздание игр: Unity, OpenGL, DirectX
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 07.08.2008, 18:21   #1
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию Direct3D: создание карт и ландшафтов

1. Предположим, есть набор изображений, объединенных в один цельный BMP, каждый из которых является изображением какого-то типа поверхности.
Как считать из BMP отдельный кусок с заданными координатами?

2. Как в Direct3D составить двухмерное изображение, составленное из отдельных bmp? (т.е что то типа карты) Как создать плоскость карты и наложить на отдельную ее часть с заданными координатами текстуру из bmp? Какой должна быть матрица мира, вида и проекции для 2d в 3d? Каким должно быть освещение?

3. Как создать 3D ландшафт? Это делается в 3ds max? Каким образом?

4. Если есть реальный код или ссылки на диски к книгам, посвященным DirectX то было бы здорово. Книги без дисков с примерами не помогают. Я читал несколько книг, но авторы не пишут полный код в книгах. Примеры же из DirectX SDK содержат много "левого" для новичка кода, что затрудняет понимание.

Язык С/С++. DirectX 9.
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"

Последний раз редактировалось challengerr; 07.08.2008 в 18:47.
challengerr вне форума Ответить с цитированием
Старый 07.08.2008, 21:37   #2
zetrix
Delphi/C++/C#
Участник клуба
 
Аватар для zetrix
 
Регистрация: 29.10.2006
Сообщений: 1,972
По умолчанию

Ответ на вопрос номер 3:
1) создаём карту высот в любом графическом редакторе. (Что такое карта высот я думаю вы знаете. чёрно белая картинка, чем выше точка на карте, тем светлее картинка в этом месте, чем ниже - тем темнее)
2) запускаем 3дсМАКс, создаём плоскость. Размеры 300х300 (по больше делаем). Полигонов 100х100 (чем больше - тем лучше уровень детализации)
3) Modifiers -> Parametric Deformers -> Displace
4) В параметре модификатора, секция Image, кликаем по кнопке NONE (рядом надпись Bitmap)
5) выбираем нашу карту высот
6) В параметре модификатора, секция Displacement, изменяем значение атрибута Strength (значение, для плоскости данного размера, примерно 30-40. Определите экспериментально)
7) Всё, вы получили рельеф. Текстурировать надеюсь вы умеете
zetrix вне форума Ответить с цитированием
Старый 07.08.2008, 22:50   #3
challengerr
Участник клуба
 
Аватар для challengerr
 
Регистрация: 30.07.2008
Сообщений: 1,601
По умолчанию

Да. Про карты высот я читал.
Сделал то, что вы написали. Спасибо, получилось прикольно.. Текструрировать в 3ds max я не умею . Может, посоветуйте хорошую книгу по 3ds max (6-7), по созданию ландшафтов и по HLSL?
"SPACE.THE FINAL FRONTIER.This's a voyage of starship Enterprise. It's 5-year mission to explore strange new worlds,to seek out new life and civilizations,to boldly go where no man has gone before"
challengerr вне форума Ответить с цитированием
Старый 08.08.2008, 01:24   #4
Assassin
Пользователь
 
Регистрация: 09.03.2008
Сообщений: 22
По умолчанию

1) Владимир Верстак "3ds max на 100%" и еще одна книга того же автора "3ds max. Секреты мастерства". Много уроков по 3ds max есть на сайтах render.ru и 3dtotal.ru.
2) "Создание 3D-ландшафтов в реальном времени с использованием C++ и DirectX" - Грег Снук.
3) "Введение в программирование трехмерных игр с DirectX 9.0" - Франк Луна. "DirectX и C++. Искусство программирования" - Фленов М.Е. - тут есть про HLSL.
Assassin вне форума Ответить с цитированием
Старый 02.05.2009, 02:15   #5
Alex2009
Proger Man
Форумчанин
 
Аватар для Alex2009
 
Регистрация: 07.03.2009
Сообщений: 584
По умолчанию

Если надо я в МАХ умею работать.
ShowMessage('Добро пожаловать!');
Alex2009 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Уроки по использованию Direct3D в Delphi Kostia Gamedev - cоздание игр: Unity, OpenGL, DirectX 32 23.02.2010 17:48
Создание карт для Counter-Strike SalasAndriy Фриланс 4 02.05.2009 02:21
Перспектива в Direct3D Ulex Gamedev - cоздание игр: Unity, OpenGL, DirectX 2 11.03.2008 01:04
Привязка Google Карт Xander Фриланс 4 13.02.2008 13:21