 |
23.06.2009, 23:10
|
#106
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
Вычисляем цвет, а потом этот цвет еще 100 раз замазываем.
|
(Offline)
|
|
23.06.2009, 23:41
|
#107
|
|
Ответ: создание 3Д движка на j2me
WISHMASTER35
для того z-buffer и придумали, ты рисуешь полигоны от ближнего к заднему, при этом цвет ты вычисляешь только для ближних, потому что задние стоят за ближними и отсекаются z-buffer'ом
|
|
|
23.06.2009, 23:42
|
#108
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
Я хотел сделать, чтобы в з-буфер записывалась ссылка на полигон. А потом когда все полигоны записаны в массив брать каждую ссылку на полигон и рисовать тот пиксель. Так бы лишний раз цвет не вычислялся. Но запись ссылок в массив это очень медленно. Хотя можно записывать номера полигонов. Но хз как потом определить цвет пикселя. Вообщем была такая тупая идея.
|
(Offline)
|
|
23.06.2009, 23:45
|
#109
|
|
Ответ: создание 3Д движка на j2me
WISHMASTER35
парень, ты с какой планеты ?
я тебе обьяснил нормальным языком, рисуем полигон, получаем глубину пикселя, если z-buffer говорит о том что этот пиксель ВИДИМ - вычисляем для него цвет и рисуем на экран
если он НЕВИДИМ - цвет вычислять НЕ НАДО !
|
|
|
23.06.2009, 23:47
|
#110
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
Интересно на сколько понизит фпс вычисление глубины пикселя.
Еще сильно мешает какая-то фигня. Если заполнять массив и рисовать ргб массив, то фпс сильно понижается. А если это делать по-отдельности, то фпс почти не понижается.
П.с. Я лучше буду использовать вместо сравнения глубины пикселя boolean. Всё равно полигоны уже отсортированы.
|
(Offline)
|
|
25.06.2009, 19:34
|
#111
|
ПроЭктировщик
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений (для 44 пользователей)
|
Ответ: создание 3Д движка на j2me
Сообщение от WISHMASTER35
Интересно на сколько понизит фпс вычисление глубины пикселя. Еще сильно мешает какая-то фигня. Если заполнять массив и рисовать ргб массив, то фпс сильно понижается. А если это делать по-отдельности, то фпс почти не понижается.
П.с. Я лучше буду использовать вместо сравнения глубины пикселя boolean. Всё равно полигоны уже отсортированы.
|
Блин... Ты уверен что тебе нужно писать движёк??? Мой тебе совет - забей на него, пока не скачаешь(или не купишь) соответствующую литературу, и не перестанешь писать такие глупости...
__________________
Я бы изменил мир, но Бог не даёт исходников...
|
(Offline)
|
|
26.06.2009, 10:41
|
#112
|
Знающий
Регистрация: 16.09.2008
Сообщений: 299
Написано 71 полезных сообщений (для 123 пользователей)
|
Ответ: создание 3Д движка на j2me
WISHMASTER35 - если делать 3D-кубик, дальше этой цели не уйдете.
Полигоны - это для простых фигур, а если видна только часть полигона, то простейшее решение это z-buffer.
____
касательно j2me: если хотите сделать свой 3D-движек, и чтоб это работало с приемлемой скоростью, необходимо использовать минимум 3D-граней, и ограничить размеры области вывода, например 100x75 pixels и т.д.
Сортировка граней - это доп.оптимизация, когда будет уже реально работающий проект, которая покажет целесообразность применения, или полный отказ от этого метода, в связи с качеством отображения и скоростью работы в целом.
____
простой 3D алгоритм рисования текстурированных граней c z-buffer'ом (TurboPascal)
www.boolean.name > Проекты > Проекты на MidletPascal > The Maze > demo.zip (искать на первых страницах)
url: http://forum.boolean.name/attachment...achmentid=4983
|
(Offline)
|
|
26.06.2009, 17:38
|
#113
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
Минимум граний и минимум разрешения это само-собой. Только 100-75 очень мало.
|
(Offline)
|
|
27.06.2009, 02:34
|
#114
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
Кстати, в з-буфер можно записывать не глубину пикселя, а номер конца горизонтальной линии. А потом когда рисовать, если -1, то нарисовать точки, если, что-то другое, то перейти на этот конец линии. Таким образом пропускаем лишний цикл и проверки. Мне оно прибавило где-то 1 фпс.
Вот http://upwap.ru/469108 сделал, чтобы рисовалось в ргб массив. Теперь, даже, если фигура не видна, то фпс и до 50 почему-то недоходит.
|
(Offline)
|
|
27.06.2009, 13:14
|
#115
|
|
Ответ: создание 3Д движка на j2me
WISHMASTER35
если вся модель не попадает в срезаную пирамиду "зрения" камеры, то её просто не нужно посылать на рендер, обычно вокруг модели строят параллелепипед и проверяют попадает ли он или его часть в срезаную пирамиду
|
|
|
27.06.2009, 13:29
|
#116
|
ПроЭктировщик
Регистрация: 10.01.2009
Адрес: хз
Сообщений: 177
Написано 18 полезных сообщений (для 44 пользователей)
|
Ответ: создание 3Д движка на j2me
Сообщение от jimon
обычно вокруг модели строят параллелепипед
|
Я строю сферу <_< конечно для плоских моделей создается слижком большая сфера, но зато вместо 48и дотов только 6 
__________________
Я бы изменил мир, но Бог не даёт исходников...
|
(Offline)
|
|
27.06.2009, 13:34
|
#117
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
У меня сейчас каждый полигон проверяется виден ли на дисплее. И фпс это не забрало.
|
(Offline)
|
|
27.06.2009, 18:22
|
#118
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
Вот исходники http://upwap.ru/469622 движка с рисованием в массив.
Но теперь там какая-то мистика. Один простейший метод G3D.clear заберает аж 50 фпс. Как это можно исправить? Или это баг джава-машины?
|
(Offline)
|
|
27.06.2009, 22:17
|
#119
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
Не, использовать з-буфер или какой-то другой массив нельзя. Чтобы, только его заполнить надо много фпс потратить. Надо одним массивом обойтись. Может сделать, если цвет пикселя равен -1, то рисовать в этот пиксель. Или другое число вместо -1.
|
(Offline)
|
|
28.06.2009, 11:50
|
#120
|
Бывалый
Регистрация: 21.12.2008
Адрес: UA
Сообщений: 878
Написано 105 полезных сообщений (для 357 пользователей)
|
Ответ: создание 3Д движка на j2me
A без очистки з-буфера можно как-то обойтись?
|
(Offline)
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 18:50.
|