![]() |
|
Модераторы: Rickert |
![]()
|
|
| Olone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 99 Регистрация: 3.10.2004 Где: Лефортово, Москва Репутация: 1 Всего: 2 |
Привет!!!
Предлагаю закрепить тему содержащую все основные термины и понятия игродельного мастерства. Потому что если новичок заходит на этот форум он не может найти ответа на многие вопросы которые его интересуют. Как вы думаете? А также описание программ используемых для рисования графики и т.п. Это сообщение отредактировал(а) Olone - 25.5.2005, 07:23 |
|||
|
||||
| Olone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 99 Регистрация: 3.10.2004 Где: Лефортово, Москва Репутация: 1 Всего: 2 |
Ну так да или нет!?!
|
|||
|
||||
| chipset |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 2 Всего: 165 |
Olone, возьмешься пополнять? Я закреплю
--------------------
|
|||
|
||||
| poor_yorik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 12.1.2005 Где: Общаги г. Киева Репутация: 3 Всего: 8 |
Вначале стоит выбрать хотя бы жанр игры, и скорее всего язык. Впрочем второе совсем необязательно. Ведь для каждого жанра свои нюансы.
Вот например для создания игр-квестов, довольно интересными на мой взгляд будут темы. - Принципы работы со спрайтами. - Фон перед персонажем и фон за персонажем. - Где и как лучше всего хранить объекты, собираемые игроком. - Создание графики, текстур и анимированных персонажей. - Кодирование и построение .sav файлов. Ну может и кое-что еще, а может и не все эти вопросы уместны. --------------------
Семь раз отмерь, один раз - откомпиль.... Семь раз отпей, один раз - отлей... Семь раз отъешь, один раз - не жадничай и другим дай... |
|||
|
||||
| Olone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 99 Регистрация: 3.10.2004 Где: Лефортово, Москва Репутация: 1 Всего: 2 |
chipset :
Я же попросил завсегдатаев, вот например Я - новичок в программировании игр, захожу на форум и ничего не могу найти, ну например что такое движок (ну это я конечно знаю но все таки), я например не знаю где лучше рисовать воду морскую, ведь можно и в фотошопе нарисовать хотя он для этого не предназначен. Я буду с превеликим энтузиазмом буду помогать в создании темы. Как могу буду учавствовать. В этой энциклопедии я предлагаю разместить самые элементарные начальные знания о программировании игр. Необязательно даже выбирать какой-то конкретный язык, просто общее. Пример для poor yorik :
А я может не знаю что такое спрайт. Мне придется создавать тему и спрашивать что это такое. А тут раз посмотрел и ОК. Давайте думайте. Это сообщение отредактировал(а) Olone - 2.6.2005, 09:06 |
|||
|
||||
| poor_yorik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 12.1.2005 Где: Общаги г. Киева Репутация: 3 Всего: 8 |
Olone, я попробую тебе помочь чем смогу. Ты просто скажи, какой жанр тебя больше всего интересет и какие темы ты бы хотел услышать.
--------------------
Семь раз отмерь, один раз - откомпиль.... Семь раз отпей, один раз - отлей... Семь раз отъешь, один раз - не жадничай и другим дай... |
|||
|
||||
| Olone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 99 Регистрация: 3.10.2004 Где: Лефортово, Москва Репутация: 1 Всего: 2 |
poor yorik спасибо!!!!!!!!!
Меня интрересуют стратегии и бродилки. Совсем немного знаком с VB. Начал читать книгу Харви и Пола Дейтела по С++. А темы: устройство графики в 3D играх, описание работы движка и т.п. т.е самое сложное в программировании игр. Но ведь тебе придется очень много писать и я тебе скоро надоем А вообще с превеликим удовольствие принимаю помощь. Могу задать конкретные вопросы насчет игр если размытые темы не понятны. СУВ Olone. P.S. А темку я все-таки создал |
|||
|
||||
| Nemesis |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 206 Регистрация: 20.2.2005 Где: Москва Репутация: 1 Всего: 5 |
Если хотите, я тоже могу помочь вам в этом деле. Просто давно занимаюсь 3х мерным программированием. В особнности методами OpenGL. Если что, могу там теорию написать. Типа там все эти матрицы преобр (трансформ, перемещ, вращ, проек ...) рендеринг сцен и прочее... Только скажите что нужно.
--------------------
|
|||
|
||||
| chipset |
|
|||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 2 Всего: 165 |
Я думаю что словарь следует опубликовывать в отдельной теме которую закрепим и дадим в ней ссылку на эту.
Эту же будем использовать для обсуждения. Во-первых, нужно разобраться со списком слов для словаря и пополнять их в этой же теме. Во-вторых, следует каждому кто знает описание написать его в своих словах. Далее, заполним тему-словарь словом+описаниями участников. К примеру: Спрайт poor_yorik - Спрайт эта такая фиговина которая фигачиться через вон ту фиготень. Nemesis - В прошлом, спрайт был назван из-за своей фиговости и теперь он обычно используеться в бла-бла-бла и ла-ла-ла. Olone - В двух словах: хренотень такая. --------------------
|
|||
|
||||
| Nemesis |
|
|||
![]() Бывалый ![]() Профиль Группа: Участник Сообщений: 206 Регистрация: 20.2.2005 Где: Москва Репутация: 1 Всего: 5 |
Хорошо, нет проблем. Нужно будет создать списочек всех этих терминов. Пусть тогда каждый выдвинет свой списочек, а затем мы их обсудим и объединим.
--------------------
|
|||
|
||||
| poor_yorik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 12.1.2005 Где: Общаги г. Киева Репутация: 3 Всего: 8 |
В таком случае предлагаю первые слово.
Начнем со страшного слова Blitting. Blitting - непереводимое на русский язык слово. Тоже кстати аббревиатура - bit block transfer – пересылка блоков бит. Благодаря этой пересылке, мы можем скопировать прямоугольную область из одной части Surface'а в другую или из одного Surface'а в другой. Такое копирование происходит пересылкой байт в видеопамяти, отсюда и название - bit block transfer. Но весь шик этого дела заключается в использовании цветового ключа. Цветовой ключ – очень полезная штука, из разряда тех, которые следовало бы изобрести, если бы их не было. Цветовой ключ – это один или, несколько цветов, предназначенных для изображения “прозрачного” цвета. Пикселы окрашенные этим цветом не копируются при Blitting'е. Это позволяет создавать иллюзию непрямоугольного изображения, хотя при Blitting'е копируются только прямоугольные области. Делается это вот как: рисуем (или просим нарисовать кого-нибудь у кого это хорошо получается) какую-нибудь картинку, ограниченную прямоугольной областью. Все пикселы этой прямоугольной области, которые не относятся к картинке, закрашиваем каким-то особым цветом, который не использовался в самой картинке. Этот особый цвет назначаем в качестве цветового ключа – при Blitting'е он не будет копироваться, и вместо пикселов, окрашенных этим цветом, останутся пикселы фона – возникнет иллюзия прозрачности. Такая картинка, в прямоугольной области, заполненной цветовым ключом называется “спрайт”. Так постоянно изменяя картинку в прямоугольнике спрайта, мы не будем затрагивать сам фон и другие спрайты. Так можно создать анимацию на определнном фоне либо несколько анимаций. --------------------
Семь раз отмерь, один раз - откомпиль.... Семь раз отпей, один раз - отлей... Семь раз отъешь, один раз - не жадничай и другим дай... |
|||
|
||||
| poor_yorik |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 148 Регистрация: 12.1.2005 Где: Общаги г. Киева Репутация: 3 Всего: 8 |
Теперь немного о самих спрайтах.
Способов вывести спрайт на поверхность экрана много. Рассмотрим один из них. Это способ, когда отдельно рисуется спрайт и отдельно маска. Для этого нам понадобится сам спрайт, его маска и буфер. И спрайт и маска должны иметь одинаковый размер, в данном примере 50x50. Для чего нужна маска? Она нужна для того, чтобы при выводе спрайта не затиралось изображение, которое находится под ним. Маску можно заготовить отдельно в BMP файле - более быстрый способ, а можно рассчитать программно.Спрайт и маску помещаем в TBitmap. Есть еще один способ. Мы должны будем в Bitmape спрайта, все пикселы, которые не хотим помещать на экран, закрасим в один сильно яркий цвет. И при прорисовке Bitmapa на экран, мы будем пропускать все пикселы покрашенные в этот цвет. Цвет, как я сказал, нужно выбирать сильно яркий, который точно не используется на картинке. Например #00FF00 . Для Дельфистов это можно реализоваьт при помощи процедуры из билиотеки DirectX, RXLib и других... DrawBitmapTransparent(param_1,X,Y,param_2,param_3); param_1 - Canvas, куда копировать X,Y - Смещение param_2 - TBitmap, что копировать. param_3 - TColor, цвет Transparent - этот цвет не будет копироваться --------------------
Семь раз отмерь, один раз - откомпиль.... Семь раз отпей, один раз - отлей... Семь раз отъешь, один раз - не жадничай и другим дай... |
|||
|
||||
| Olone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 99 Регистрация: 3.10.2004 Где: Лефортово, Москва Репутация: 1 Всего: 2 |
Ура! chipset когда закрепишь?
poor yorik начал ты так сказать не с самого легкого. Я думаю что надо располагать термины не по алфавиту, а по степени их сложности от самого легкого до самого сложного. Постепенно переходя к более запущенным. Надо начать со свойств монитора отображать цвета, что такое движок каково его предназначение и т.п. Я постараюсь что-нибудь нарыть в сети. |
|||
|
||||
| chipset |
|
||||||
|
Эксперт ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 4071 Регистрация: 11.1.2003 Где: Seattle, US Репутация: 2 Всего: 165 |
Пока эту креплю, но давайте уж насобираем достаточный список терминов
Можно немного терминов отсюда повыдирать если Gepard согласиться, естественно с сохранением аффторства Вот ещё пару терминов. 1. Пиксель -- минимальный элемент графического дисплея. 2. Текстура -- графическое изображение используемое для накладки на каркас полигона. 3. Вершина -- минимальная точка в 2D или же 3D пространстве. 4. Рендеринг -- процесс обработки графической информации на устройство вывода, чтобы сразу можно было прорисовать. 5. Полигон -- простейшая плоскость в 3D пространстве. Составляеться минимум из трёх вершин, и обычно только из трёх поскольку это наименьшее количество вершин которые описывают плоскость, хотя иногда используються и полигоны квадратной формы. .. Это дело можно будет даже подверстать Добавлено @ 22:47
Соблюдаем авторские права, плз, не надо плагиата. --------------------
|
||||||
|
|||||||
| Olone |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 99 Регистрация: 3.10.2004 Где: Лефортово, Москва Репутация: 1 Всего: 2 |
Вот что я нашел, в основном все из 3DFAQ'a.
Немного сложноватые. Тайл - картинка фиксированного размера, причем нарисованная таким образом, что при сопоставлении с другими тайлами получается единое изображение без заметных “швов”. 'Альфа-канал'. Специальный слой изображения (как слои Red, Green, и Blue), определяющий 'прозрачность' RGB-точ- ки исходного изображения. Белый цвет в Alpha-канале озна- чает 'непрозрачную RGB-точку', черный цвет - 'прозрачную RGB-точку'. В Alpha-канале возможна плавная градация от белого до черного в палитре 'grayscale' (черно-серо- белая, 256 цветов). Соответственно будет меняться 'проз- рачность'. Полностью 'прозрачная RGB-точка' заменяется на RGB-составлющие изображения, находящегося за этой точкой. Полностью 'непрозрачная RGB-точка' никаких изменений не получает. Промежуточный вариант 'прозрачности' получается путем сложения RGB-составляющих точек картинки и фонового изображений. Ambient 'Окружающий'. Цвет материала в тени; чаще - свет, отражен- ный от участка материала, освещенного рассеянным (отражен- ным от других объектов) светом. Anti-Aliasing 'Разглаживание'. Часто после обсчета 3D-изображения на картинке можно увидеть ребристые края у объектов (выглядят как 'лесенка'). Существуют специальные алгоритмы разглажи- вания таких артефактов в изображении. Общее их название: "Anti-Aliasing". Aspect Ratio 'Зрительное отношение'. Коэффициент отношения ширины изображения к его высоте. Т.е. AspRat = Xsize / Ysize. Стандартное значение AspRat=1.333, что верно для изобра- жений 640x480, 800x600, 1024x768, NTSC 768x576. Bump 'Выбоина'. Искуственный эффект изображения выбоин, трещин, шероховатостей на ровной поверхности. Работает за счет соз- дания "затемненных участков поверхности, как бы находящихся в тени". Не требует больших математических просчетов (очень быстро работает), но при сильном увеличении/приближении к поверхности обнаруживаются многочисленные ошибки: непра- вельные тени, не зависящие от окружающего освещения, низкое качество, и т.д. Diffuse 'Рассеянный'. Цвет материала под прямым светом; чаще - свет, отраженный от участка материала, освещенного прямым светом. ICD 'Installable Client Driver'. Драйвер для видеокарт OpenGL, позволяющий использовать все возможности спецификации OpenGL. Именно IDC-драйвера используются при работе Maya, Softimage, 3DS Max, LightWave, и других программ. Так же см. 'MCD'. NURBS 'Non-Uniform Rational Basis-Splines'. Математические поверхности, кривизна которых определяется положением контрольных точек, а положение любой точки поверхности вычисляется по математическим формулам. Radiocity 'Рассеянный свет'. Эффект подсветки объекта(ов) за счет от- ражения света от других объектов в сцене, а так же рас сеивания света непрозрачными субстанциями (газами, взвеся- ми, парами и т.д.). При этом, если объект получает свет, отраженный от объекта красного цвета, то и подсветка будет красным светом! Z-buffer 'Z-буффер'. В программах, работающих с 3D, есть понятие 'глубины'. Это простое число, как X- и Y-координаты точки. Определяет расстояние от точки изображения до 'экрана'. В графическом изображении может хранится как градация черно- бело-серого цвета: белый цвет соответствует переднему пла- ну, черный - заднему наиболее удаленному от экрана плану. Соответственно градации серого цвета обозначают промежу- точное удаление. Часто используется для совмещения создан- ной картинки и "живого видео", при этом объекты на картин- ке закрывают "живые объекты", находящиеся за объектами. |
|||
|
||||
![]()
|
| Правила форума "Программирование игр, графики и искуственного интеллекта" | |
|
|
НА ЗЛОБУ ДНЯ: Дорогие посетители, прошу обратить внимание что новые темы касающиеся новых вопросов создаются кнопкой "Новая тема" а не "Ответить"! Любые оффтопиковые вопросы, заданные в текущих тематических темах будут удалены а их авторы, при рецедиве, забанены.
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Rickert. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Программирование игр, графики и искусственного интеллекта | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |