|
3D-программирование Вопросы, касающиеся программирования 3D мира |
15.10.2013, 18:01
|
#1
|
Принтер
Регистрация: 21.04.2013
Адрес: Больше не РФ
Сообщений: 570
Написано 342 полезных сообщений (для 1,242 пользователей)
|
Мегатекстуры в Блитц3Д
Для моего "суперпаверфуллещенедоделанногоредакторакартдлясво ейсуперпупернедоделанойигрушки" желательно использование мегатекстур для раскрашивания террейнов. Чем больше разрешение - тем лучше. Дак в чем вопрос: возможно ли в принципе использование текстур сверхвысокого разрешения в блитце да и еще постоянное процедурное разрезание этого чуда на мелкие фрагменты? Или я это загнул?
|
(Offline)
|
|
15.10.2013, 19:25
|
#2
|
Задрот
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений (для 863 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
загнул. Луркай в сторону Xors3D и вершинно\пиксельных шейдеров
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
15.10.2013, 20:55
|
#3
|
Принтер
Регистрация: 21.04.2013
Адрес: Больше не РФ
Сообщений: 570
Написано 342 полезных сообщений (для 1,242 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
Сообщение от Reizel
загнул. Луркай в сторону Xors3D и вершинно\пиксельных шейдеров
|
Можно попробовать, хотя я скорее хочу на Irrlicht перейти. Не знаю. Ксорс рип Да и ирлич бесплатный. Вообщем надо тему отдельную делать
Когда же уже откроют ID Tech. 5
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
15.10.2013, 21:13
|
#4
|
Задрот
Регистрация: 24.07.2009
Адрес: Ивановская область, г. Кинешма
Сообщений: 1,574
Написано 407 полезных сообщений (для 863 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
Сообщение от XoreX
Можно попробовать, хотя я скорее хочу на Irrlicht перейти. Не знаю. Ксорс рип Да и ирлич бесплатный. Вообщем надо тему отдельную делать
|
ирлихт медленный. Поищи что-нибудь другое
|
(Offline)
|
|
15.10.2013, 21:19
|
#5
|
Принтер
Регистрация: 21.04.2013
Адрес: Больше не РФ
Сообщений: 570
Написано 342 полезных сообщений (для 1,242 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
Сообщение от Reizel
ирлихт медленный. Поищи что-нибудь другое
|
Давно хотел перелезть на огр, но вот блин пугает его сложность в сборке и огромные конструкции Есть вариант юнити, но вот, сволочь, бабки не хочется тратить Мы же все хотим продавать свой проЭкт Детские мечты, конечно.
Может предложите кроме этой четверки?
|
(Offline)
|
|
15.10.2013, 21:53
|
#6
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
для терейна с мегатекстурой не нужно особо никаких шейдеров.
я делал так (в своёмдвижке) - делил терейн на квадтри и по геометрии и по текстуре одинаково и стримил нужные куски текстуры фоном. для террейна это более эффективно, чем general-purpose мегатекстуры.
пока текстура не застримена, показывал кусок текстуры максимального загруженного лода.
сможешь в блице загружать текстуры в отдельном потоке - может и сделаешь.
Есть вариант юнити, но вот, сволочь, бабки не хочется тратить
|
там с потоками не лучше чем в блице, и там и тут придётся свои либы городить, но под блиц вроде бы была уже какая-то.
никогда бы не поверил что буду кому-то советовать блиц, но такие дела
|
(Offline)
|
|
Эти 6 пользователя(ей) сказали Спасибо Mr_F_ за это полезное сообщение:
|
|
16.10.2013, 01:25
|
#7
|
Быдлокодер
Регистрация: 05.07.2009
Адрес: Проспит
Сообщений: 5,024
Написано 2,312 полезных сообщений (для 5,349 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
Сообщение от Mr_F_
для терейна с мегатекстурой не нужно особо никаких шейдеров.
я делал так (в своёмдвижке) - делил терейн на квадтри и по геометрии и по текстуре одинаково и стримил нужные куски текстуры фоном. для террейна это более эффективно, чем general-purpose мегатекстуры.
пока текстура не застримена, показывал кусок текстуры максимального загруженного лода.
сможешь в блице загружать текстуры в отдельном потоке - может и сделаешь.
там с потоками не лучше чем в блице, и там и тут придётся свои либы городить, но под блиц вроде бы была уже какая-то.
никогда бы не поверил что буду кому-то советовать блиц, но такие дела
|
Библиотека называется FastPointer (ссылка внизу), она бесплатна. Но не всё так гладко, не знаю стабильно ли будет работать программа если грузить текстуры, но вот меши например точно нельзя, очень быстро получаешь MAV (в примерах есть предупреждение).
Она может отлично подойти например для математики, библиотеки физики и т. п. в отдельном потоке. Что-то грузить нежелательно (хотя если оно не связано с блицем).
Но всё это нестабильно, хотя ладит даже с Хорсом (под Blitz3D и BlitzPlus).
ИМХО
|
(Offline)
|
|
16.10.2013, 13:53
|
#8
|
Чудо-кот
Регистрация: 22.02.2011
Сообщений: 901
Написано 480 полезных сообщений (для 1,471 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
Сообщение от Arton
Библиотека называется FastPointer (ссылка внизу), она бесплатна. Но не всё так гладко, не знаю стабильно ли будет работать программа если грузить текстуры, но вот меши например точно нельзя, очень быстро получаешь MAV (в примерах есть предупреждение).
Она может отлично подойти например для математики, библиотеки физики и т. п. в отдельном потоке. Что-то грузить нежелательно (хотя если оно не связано с блицем).
Но всё это нестабильно, хотя ладит даже с Хорсом (под Blitz3D и BlitzPlus).
ИМХО
|
В моих кривых ручонках эта штука не вылетала даже без мутексов (проворачивал асинхронную подгрузку текстур и деформацию моделей).
|
(Offline)
|
|
16.10.2013, 14:03
|
#9
|
Ференька
Регистрация: 26.01.2007
Адрес: улица Пушкина дом Колотушкина
Сообщений: 10,742
Написано 5,461 полезных сообщений (для 15,675 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
Сообщение от Arton
меши например точно нель
|
Это вполне объяснимо: в Блице меш сразу же попадает в список рендера, видимо, в сам момент создания, ещё до того, как он был прогружен. Так-то оно обычно насрать, ведь блиц не асинхронен сам по себе. А когда юзаешь несколько потоков, рендер может пытаться рендерить ещё не загруженную модель и крошится (я так думаю, по крайней мере, причина в этом кроется, по крайней мере, у меня в движке так было)
__________________
Мои проекты:
Анальное Рабство
Зелёный Слоник
Дмитрий Маслов*
Различие**
Клюква**
* — в стадии разработки
** — в стадии проектирования
Для проектов в стадии проектирования приведены кодовые имена
|
(Offline)
|
|
16.10.2013, 14:12
|
#10
|
Терабайт исходников
Регистрация: 13.09.2008
Сообщений: 3,947
Написано 2,189 полезных сообщений (для 6,051 пользователей)
|
Ответ: Мегатекстуры в Блитц3Д
ещё сам по себе DX юзать из нескольких потоков может дать непредсказуемый эффект, т.к. если он в момент создания текстуры чето в какую-то память записывает, то при двойной попытке записи из разных потоков будет краш. В дх9 есть флажок MULTITHREADED, который добавляет мутексы повсюду в нём, в дх7 вроде нет, и вообще это лишний оверхед и не круто его юзать. Только с ДХ10 добавили нормальную многопоточность.
ну и сам блиц может кроме текстуры, в какую то свою общую память что-то писать.
чтобы обезопаситься, лучше создавать все текстуры один раз - для всех квадтри кусков можно иметь одинаковое разрешение, а кол-во текстур подсчитать какое максимально видно на экране при выбранных настройках дистанции до переключения на след. лод.
я так и делал по сути в своём движке - никаких динамических аллокаций.
в своём потоке ты только загружаешь тексы с харда в ОЗУ, не трогая блиц и ДХ.
далее в своей либе синхронно с блицем вызываешь UpdateTexture (надеюсь он есть в дх7). Ах да, для его юзанья лучше текстуры с правильными флагами создавать тоже в своей либе.
Да и загрузку тоже делай в своей либе, чтобы сразу 1 fread, а не 100500 ReadByte.
--
UpdateTexture сам может вызывать подлагивания, если каждая текстура (кусок мегатексы) слишком большая, лучше потестить с разными размерами. Можно большую тексу апдейтить по кускам ещё за несколько кадров.
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 03:19.
|