Здравствуйте, гость ( Вход | Регистрация )

6 страниц V  < 1 2 3 4 > »   
Ответить в данную темуНачать новую тему
> 3d Graphics, DirectX, OpenGL, Software
Darth Sidius
сообщение 23.02.2004 - 12:14
Звезда форума
****
орден II степени
Группа: Участник
Сообщений: 384
Регистрация: 7.10.2003
Пользователь №: 340


Цитата(Колбасьев @ 22.02.2004 - 21:56)
Поэтому во многих играх и программах можно выбирать "рендер", так как громадная часть кода - общая.

Ты имеешь ввиду выбор между OpenGL и DirectX?? Если я правильно понял.
Перейти в начало страницы
 
+Цитировать сообщение
Jaguard
сообщение 23.02.2004 - 13:31
Постоялец форума
*****

Группа: Участник
Сообщений: 616
Регистрация: 29.09.2003
Пользователь №: 105


1. ДельфиХ жутко удобная весч. Но гадость. Потому что настолько, насколько удобная, настолько же и тормозная. Так что, использовать надо обязательно "чистый" директХ.

2. VCL действительно легко отключается. Но зачем? То, что оно добавляет 300кб кода в exe, лично меня совершенно не смущает, а возиться с WinAPI - это для извращенцев. Даже для MSVC используют MFC.

3. Еще один пример - Age Of Wonders, обе части которой написаны на дельфи.

Вообщем, спорить тут не о чем. Да, дельфи тормознее засчет кривой оптимизации. Но программировать игры на нем можно. И значительно удобнее, для тех кто привык к удобству дельфи.
Перейти в начало страницы
 
+Цитировать сообщение
Phoenix
сообщение 23.02.2004 - 15:19
void*
******
орден IV степени
Группа: Участник
Сообщений: 1631
Регистрация: 29.09.2003
Пользователь №: 45


Ладно, ладно. Некомпетентен я в дельфи, это было ясно с самого начала. Однако насчет MFC хочу сказать, что большего зла я не видел, в играх он исключительно вреден, без него проще. А винапи в играх тоже сравнительно бесполезен. - ГУИ самому писать надо (IMG:https://forum.netall.ru/style_emoticons/default/wink.gif)
Цитата
Вообщем, спорить тут не о чем. Да, дельфи тормознее засчет кривой оптимизации. Но программировать игры на нем можно.

На досовском паскале тоже можно, вопрос - зачем? Сложно сказать, что лучше - прогать на дельфи или учиться сям, ибо тут уже не сработает тот фактор, что на дельфях все получается "быстро", тут уже ручками, ручками. (IMG:https://forum.netall.ru/style_emoticons/default/wink.gif)
Перейти в начало страницы
 
+Цитировать сообщение
Phoenix
сообщение 23.02.2004 - 15:24
void*
******
орден IV степени
Группа: Участник
Сообщений: 1631
Регистрация: 29.09.2003
Пользователь №: 45


Вот блин... опять все свелось к флейму про дельфи.... Народ, высказывайте последнее мнение, и возвращаемся в тему.
Перейти в начало страницы
 
+Цитировать сообщение
andrew
сообщение 14.07.2004 - 00:57
Постоялец форума
*****

Группа: Участник
Сообщений: 545
Регистрация: 12.07.2004
Пользователь №: 4138


Я в течение почти года принимал непосредственное участие в разработке Direct3D-игры на Delphi, так вот, что я Вам скажу по этому поводу - хуже этой комбинации быть не может!!! Как Вам, вероятно, известно, сама среда DirectX написана на C++, поэтому активно использует операции с указателями. Вот классический пример кода доступа к какому-либо буферу(текстура, back-buffer, etc.) на Delphi:
Код
for i := 0 to dwBufSize - 1 do
begin
 DWORD(PDWORD(DWORD(pBuf) + i)^) := $00000000;
end;

Согласитесь, выглядит несколько коряво и малопонятно. А теперь то же самое на C++:
Код
for (int i = 0;i < dwBufSize;i++)
{
 *(pBuf + i) = 0x00000000;
}

Это горазно короче и наглядней!
Это во-первых.
Во-вторых, если Вы собираетесь писать приложение с сильной и реалистичной физикой, то Вам придётся заниматься оптимизацией кода под различные процессоры, чтобы всё это обсчитывать в реальном времени. Для С++ существует отличный компилятор для процессоров Intel, оптимизирующий код под Pentium 4. На Delphi же Вам придётся изучать ассемблер и разобраться в различных системах команд (например, вопрос на засыпку - где нужно использовать ISSE2, а где можно обойтись и ISSE?), т.к. оптимизирующих компиляторов для Delphi я не знаю...
Перейти в начало страницы
 
+Цитировать сообщение
Колбасьев
сообщение 14.07.2004 - 11:20
Энтузиаст
****

Группа: Участник
Сообщений: 462
Регистрация: 30.09.2003
Пользователь №: 143


Цитата(Дата 23.02.2004 - 00:44)
А дельфи и вовсе, по сравнению с MSVC(AFAIR, Колбасьев, поправь, если я ошибся) не умеет отключать VCL от проекта, если он не нужен, а тащить его за собой - просто незачем.
PS. Слухай, а ты на дельфи игры прогал?


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

2способ: пишем на WinAPI и вместо 300Кб получаем 9Кб - если очень важен размер.

А вообще игру можно писать с использованием форм и т.д., а затем с использованием двух предложенных вариантов уменьшить размер программы.

Так что вопросы объема, скорости работы и времени разработки - это для тех кому охота поспорить зря. Для всего есть решение.
Перейти в начало страницы
 
+Цитировать сообщение
someone
сообщение 14.07.2004 - 13:45
Unknown
****
орден III степени
Группа: Модератор
Сообщений: 405
Регистрация: 29.09.2003
Пользователь №: 74


Не уходите от темы. Прошу соблюдать порядок и не оффтопить в данном разделе. Все сообщения которые не будут относиться к данной теме впредь будут удаляться. Только злиться на меня не надо, просто немножко порядок давайте наведём.
Перейти в начало страницы
 
+Цитировать сообщение
Колбасьев
сообщение 28.08.2004 - 14:54
Энтузиаст
****

Группа: Участник
Сообщений: 462
Регистрация: 30.09.2003
Пользователь №: 143


Как в DirectX антиальянсинг "включить"?
Перейти в начало страницы
 
+Цитировать сообщение
andrew
сообщение 28.08.2004 - 17:59
Постоялец форума
*****

Группа: Участник
Сообщений: 545
Регистрация: 12.07.2004
Пользователь №: 4138


Очень просто!
Код
//Перед созданием устройства ( Device)
D3DPRESENT_PARAMETERS::MultiSampleType = D3DMULTISAMPLE_4_SAMPLES;
Перейти в начало страницы
 
+Цитировать сообщение
Колбасьев
сообщение 29.08.2004 - 18:20
Энтузиаст
****

Группа: Участник
Сообщений: 462
Регистрация: 30.09.2003
Пользователь №: 143


А как теперь его выключить? (IMG:http://forum.netall.ru/style_emoticons/default/sad.gif)

Я попробывал:

SetRenderState(D3DRS_MULTISAMPLEANTIALIAS, DWORD (False));
SetRenderState(D3DRS_MULTISAMPLEMASK, DWORD (False));

Толку нет. (IMG:http://forum.netall.ru/style_emoticons/default/no.gif)

Мне надо на время выключит "сглаживание". У меня буквы шрифта блеклыми выходят.

Сообщение отредактировано Колбасьев - 29.08.2004 - 18:21
Перейти в начало страницы
 
+Цитировать сообщение
someone
сообщение 29.08.2004 - 22:39
Unknown
****
орден III степени
Группа: Модератор
Сообщений: 405
Регистрация: 29.09.2003
Пользователь №: 74


Дело в том что такие параметры применяются при создании устройства и их потом не отменишь....
Перейти в начало страницы
 
+Цитировать сообщение
Колбасьев
сообщение 30.08.2004 - 12:36
Энтузиаст
****

Группа: Участник
Сообщений: 462
Регистрация: 30.09.2003
Пользователь №: 143


А как это можно обойти?

Я пробовал создать два устройства и выводить поочередно. ^_^ Невышло.
Или что-ж перед выводом надписей пересоздавать устройство?

Странно, что отключить нельзя...
Перейти в начало страницы
 
+Цитировать сообщение
andrew
сообщение 30.08.2004 - 13:22
Постоялец форума
*****

Группа: Участник
Сообщений: 545
Регистрация: 12.07.2004
Пользователь №: 4138


И совсем не странно, а вполне объяснимо, если знать, как FSAA реализован на аппаратном уровне...
Перейти в начало страницы
 
+Цитировать сообщение
someone
сообщение 30.08.2004 - 22:41
Unknown
****
орден III степени
Группа: Модератор
Сообщений: 405
Регистрация: 29.09.2003
Пользователь №: 74


Два девайса нельзя создать для одного HWND +) придумай чтонибудь со шрифтом - в инете решений море, они все ждут тебя.
Перейти в начало страницы
 
+Цитировать сообщение
Колбасьев
сообщение 5.09.2004 - 19:47
Энтузиаст
****

Группа: Участник
Сообщений: 462
Регистрация: 30.09.2003
Пользователь №: 143


И еще такой момент: для текстуры надо что-то задавать? А то как-то странно антиальянсинг работает.
Перейти в начало страницы
 
+Цитировать сообщение
someone
сообщение 5.09.2004 - 21:41
Unknown
****
орден III степени
Группа: Модератор
Сообщений: 405
Регистрация: 29.09.2003
Пользователь №: 74


В чём проявляются странности ? Скрины в тему или на мыло плиз(в профиле оно есть), для текстуры ничего не надо задавать, если тебе не нравиться стандартная анизотропия, ты шейдер напиши, если ломает, могу дать парочку.
Перейти в начало страницы
 
+Цитировать сообщение
Колбасьев
сообщение 6.09.2004 - 08:54
Энтузиаст
****

Группа: Участник
Сообщений: 462
Регистрация: 30.09.2003
Пользователь №: 143


Цитата
на мыло плиз(в профиле оно есть),


^_^ Для конфиденциальности адрес не показывается (даже в профиле), а как отправить из форума, присоеденив изображения я не знаю. Тег IMG требует адрес в сети, а не локальный (или я не прав?).

Вообще же смысл в том, что в одной программке с включенным антиальянсингов некое изображение мага выглядит так: в руке у него "сферообразный сгусток энергии" (красивая градиентная звезда-окружность), а у меня просто синий круг, как и без антиальянсинга. (IMG:http://forum.netall.ru/style_emoticons/default/sad.gif)
Перейти в начало страницы
 
+Цитировать сообщение
someone
сообщение 6.09.2004 - 18:31
Unknown
****
орден III степени
Группа: Модератор
Сообщений: 405
Регистрация: 29.09.2003
Пользователь №: 74


vorobieva@zelnet.ru пожалуйста скинь скриншот и сам ресурс, содержащий мага ( текстура, там... модель... ) и ресурс звёздочки.
Перейти в начало страницы
 
+Цитировать сообщение
someone
сообщение 7.09.2004 - 14:17
Unknown
****
орден III степени
Группа: Модератор
Сообщений: 405
Регистрация: 29.09.2003
Пользователь №: 74


Получил скриншоты... весьма странная картинка.... Не стоит ли у звёздочки colorkey, как она рисуется ( с шейдером\без ). Как она рисуется с выключенным блендингом, перешли демо, без сорцов, может это глюк твоих дров\карты или мало ли чего... здесь причин масса может быть... попробуй вынести рисовку в отдельный проект и посмотреть как работает это там, т.е чтоб лишнего кода не было, так будет проще найти ошибку ( возьми любой туториал и в него внедри своего мага с звёздочками ). Ещё раз повторю... это может быть от чего угодно, нужно перебрать все варианты, не бойся если что публикуй код (IMG:http://forum.netall.ru/style_emoticons/default/wink.gif)
Перейти в начало страницы
 
+Цитировать сообщение
Колбасьев
сообщение 7.09.2004 - 17:31
Энтузиаст
****

Группа: Участник
Сообщений: 462
Регистрация: 30.09.2003
Пользователь №: 143


Полажу, поищу еще, думаю. Дема - сильно сказано. Там все примерно так же :-). Спасибо.
Перейти в начало страницы
 
+Цитировать сообщение

6 страниц V  < 1 2 3 4 > » 
Ответить в данную темуНачать новую тему
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0

 



RSS Текстовая версия Сейчас: 28.05.2020 - 03:11