Извините, ничего не найдено.

Не расстраивайся! Лучше выпей чайку!
Регистрация
Справка
Календарь

Вернуться   forum.boolean.name > Программирование игр для компьютеров > Xors3D

Xors3D Графический движок с поддержкой DirectX9

Ответ
 
Опции темы
Старый 17.06.2014, 14:14   #316
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Mr_F_, вот знание разных GAPI теперь тебе дает возможность рассмотреть суть абстракций, и если вдруг будет необходимость поддержки более нового GAPI, то переход будет не на столь болезненный.

А теперь прикинь у тебя все написано одной кашей, от друг дружки завязано. Вот та же тема со стейтами, что все встанет как полагается для DX10? Нифига, будут те же костыли и все будет не меньше ломаться. По крайней мере у тебя "добавления" зависимостей, а в одной каше это будет перелопачивание зависимостей с неприятными последствиями.

Опыт естественно нужен при работе с разными GAPI, но писать один спаггети-код - это прямой путь к провалу.
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
Mr_F_ (17.06.2014)
Старый 17.06.2014, 21:34   #317
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

А теперь прикинь у тебя все написано одной кашей, от друг дружки завязано.
ну так я не предлагаю херачить как попало а потом портировать на другой гапи.
варианта 2:
- херачить быстро на одном гапи
- херачить с абстракциями под много гапи, зная каждый очень хорошо в отдельности
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
moka (17.06.2014)
Старый 17.06.2014, 21:36   #318
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Сообщение от Mr_F_ Посмотреть сообщение
ну так я не предлагаю херачить как попало а потом портировать на другой гапи.
варианта 2:
- херачить быстро на одном гапи
- херачить с абстракциями под много гапи, зная каждый очень хорошо в отдельности
Так как первый - один из вариантов, но для опыта лучше двигаться ко второму, а опыта нету. Следственно стоит херачить быстро на одном гапи с мелкими абстракциями (для опыта), и затем их "поломать" и понять где напортачил при переходе на другой GAPI. По сути то через что ты прошел, тем самым будет отличный опыт.
(Offline)
 
Ответить с цитированием
Старый 17.06.2014, 22:43   #319
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Ну может быть, тут в принципе чувак для себя пилит, а вот у меня был определённый заказ со сроками, и я тогда мог сделать много чего быстрее, если бы не заморачивался :D
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
moka (18.06.2014)
Старый 18.06.2014, 01:09   #320
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Сообщение от Mr_F_ Посмотреть сообщение
Ну может быть, тут в принципе чувак для себя пилит, а вот у меня был определённый заказ со сроками, и я тогда мог сделать много чего быстрее, если бы не заморачивался :D
Но опыт то нужно тоже получать, а не тупо пилить - абы здать. Следственно ты все правильно имхо сделал.
Кодинг и вся жизнь разработчиков никогда не бывает гладкой, никогда. И те кто умеют "страдать" как полагается те и опыта набираются збсь.
(Offline)
 
Ответить с цитированием
Эти 2 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
bugway (18.06.2014), Mr_F_ (18.06.2014)
Старый 29.06.2014, 12:17   #321
bugway
ПроЭктировщик
 
Аватар для bugway
 
Регистрация: 19.03.2012
Адрес: Забайкальский край
Сообщений: 112
Написано 15 полезных сообщений
(для 23 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Всем привет!

У кого-нибудь есть нормальная инфа, как делать вывод текста с нуля, не используя d3dx и подобные библиотеки?

Дело в том, что удалось оптимизировать код таким образом, что на пустой сцене FPS переваливает за 10000 (!!!). Вывод одной строчки через d3dx убивает фпс до 6500. А вывод еще нескольких строк - до 2000 фпс. А если с GUI - то фпс не более 500. Не хочется изобретать велосипед, поэтому может кто подскажет, чем кто пользовался и как выводил текст и GUI?

Пока варианта 2: либо d3dx/dxut, либо каждую букву стрипом с текстурой буквы. Может еще какие варианты есть? Еще не могу отделаться от мысли рисовать текст напрямую в backbuffer. Но в интернете что-то не нашел такого варианта...
__________________
PC: MB ASRock Z170M Pro4S / CPU Intel Core i-5 6600 4-Core / RAM 32 Gb / GPU Geforce RTX 2080 Ti 11Gb / Oculus Rift DK1 + CV1 / HTC Vive / Deus Odin DK 0..5

https://rw-game.ru
https://geovoxium3d.com
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 12:27   #322
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Вывод одной строчки через d3dx убивает фпс до 6500. А вывод еще нескольких строк - до 2000 фпс. А если с GUI - то фпс не более 500
такие измерения ни о чём не говорят, лучше кол-во миллисекунд замерь и подумай сколько у тебя их занимает пустая сцена в 10к фпс. на фоне скорости реальной игры, этот д3дх текст заметен вообще не будет.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Сообщение было полезно следующим пользователям:
moka (29.06.2014)
Старый 29.06.2014, 13:00   #323
bugway
ПроЭктировщик
 
Аватар для bugway
 
Регистрация: 19.03.2012
Адрес: Забайкальский край
Сообщений: 112
Написано 15 полезных сообщений
(для 23 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

1 строка - около 0.2 мс. Может я и правда слишком зациклился на оптимизациях...

Но вот как реализовать мягко скролируемый текст... Тут уже не просто вывод текста - тут надо рисовать часть первой видимой строки, n-строк посередине, часть последней видимой строки. Это дополнительные проверки и потеря ФПС... Или рендерить в текстуру и натягивать на страйп?
__________________
PC: MB ASRock Z170M Pro4S / CPU Intel Core i-5 6600 4-Core / RAM 32 Gb / GPU Geforce RTX 2080 Ti 11Gb / Oculus Rift DK1 + CV1 / HTC Vive / Deus Odin DK 0..5

https://rw-game.ru
https://geovoxium3d.com
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 13:30   #324
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

ну вообще по-мойму сегодня уже все игры, неигры и кто угодно рендерит UI квадами с текстурой. это БЫСТРО. в том числе д3дх делает то же самое. зная это, достаточно очень тривиально изменить VS чтобы плавно сдвигать все вертексы. можешь сделать это с д3дхом (если там всё не слишком через жопу), можешь сам, но в последнем случае учти, что тебе придётся много времени потратить на чёртов текст, чтобы там кернинг был нормальный, тексель в пиксель попадал и т. д., зависит дальше от амбиций (размеры/разноцветность/болд-италик/теги...)
---
брр погоди, разве д3дх не позволяет рисовать текст начиная с любого пикселя экрана? насколько я помню, позволяет. ну и какие проблемы со скроллингом?
---
а, ты что ли про то чтобы скроллить не влезающий в экран большой текст? и про проверки на видимые строки? пфф, это вообще ничего не стоит, чтобы тут про фпс рассуждать
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 15:01   #325
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Сообщение от Mr_F_ Посмотреть сообщение
ну вообще по-мойму сегодня уже все игры, неигры и кто угодно рендерит UI квадами с текстурой. это БЫСТРО.
Именно так я делаю у себя.

Сообщение от Mr_F_ Посмотреть сообщение
в том числе д3дх делает то же самое.
Вот я не уверен, я столкнулся с той же самой проблемой - текст в д3дх реально много жрёт. Была сцена со средним фпс 60, вывод текста на 2/3 площади экрана просадил до 5 фпс. Даже если сцену потом убрать - фпс не поднимется. Однако я не уверен что я правильно рисовал. Я каждый раз вызывал функцию прорисовки текста, а может быть, если текст не меняется, есть способ нарисовать его один раз куда-нибудь в текстуру и затем выводить эту саму текстуру.

Сообщение от Mr_F_ Посмотреть сообщение
брр погоди, разве д3дх не позволяет рисовать текст начиная с любого пикселя экрана? насколько я помню, позволяет.
Да 100% я так делал.
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 16:15   #326
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Была сцена со средним фпс 60, вывод текста на 2/3 площади экрана просадил до 5 фпс.
ну не знаю, я его юзал, и он почти не влиял вообще. выводил несколько дебаг строчек типа фпс и подобного.

есть способ нарисовать его один раз куда-нибудь в текстуру и затем выводить эту саму текстуру.
экран текста выводить в фуллрес текстуру будет медленее чем рисовать квады с буковками склееные в 1 дип.
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 17:11   #327
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Сообщение от Mr_F_ Посмотреть сообщение
ну не знаю, я его юзал, и он почти не влиял вообще. выводил несколько дебаг строчек типа фпс и подобного.


экран текста выводить в фуллрес текстуру будет медленее чем рисовать квады с буковками склееные в 1 дип.
Зависит от того какую площадь экрана покрывает текст, попробуй вывести на весь экран.

Ну если свой текст писать то через квады, но д3дх выглядит красивей, а если его тоже выводить по буквам через квады будет также некрасиво как свой текст через квады.
Вообще можно минимизировать количество текста в ХАДе, а где-нибудь в окне меню игра то на паузе будет - можно и с более низким фпс повыводить.
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 17:20   #328
Mr_F_
Терабайт исходников
 
Аватар для Mr_F_
 
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений
(для 6,051 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Ну если свой текст писать то через квады, но д3дх выглядит красивей, а если его тоже выводить по буквам через квады будет также некрасиво как свой текст через квады.
д3дх работает через квады
делать через квады не делает текст "некрасивым"
некрасивым его делают кривые руки
__________________
бложик | geom.io | твиттер | faded | демо 1 2 | роботы | лайтмаппер
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 19:32   #329
Samodelkin
Мастер
 
Регистрация: 12.01.2009
Сообщений: 979
Написано 388 полезных сообщений
(для 631 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Ну я не художник чтоб шрифты рисовать, подходящего размера в инете не нашел, а нужно было чтоб тексель в пиксель попадал и нужного размера, пришлось самому шрифты рисовать.
(Offline)
 
Ответить с цитированием
Старый 29.06.2014, 19:36   #330
moka
.
 
Регистрация: 05.08.2006
Сообщений: 10,429
Написано 3,454 полезных сообщений
(для 6,863 пользователей)
Ответ: Пишем 3D движок - замену Xors3D

Зачем рисовать, есть же куча Bitmap Fonts генераторов. Например: http://www.gamedev.ru/projects/forum/?id=152527
(Offline)
 
Ответить с цитированием
Эти 4 пользователя(ей) сказали Спасибо moka за это полезное сообщение:
ABTOMAT (02.07.2014), Mr_F_ (29.06.2014), Nerd (29.06.2014), Samodelkin (29.06.2014)
Ответ


Опции темы

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


Часовой пояс GMT +4, время: 22:26.


vBulletin® Version 3.6.5.
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Перевод: zCarot
Style crйe par Allan - vBulletin-Ressources.com