forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   Xors3D (http://forum.boolean.name/forumdisplay.php?f=126)
-   -   Тормоза при использовании прозрачных текстур (http://forum.boolean.name/showthread.php?t=15346)

pozitiffcat 24.08.2011 11:14

Тормоза при использовании прозрачных текстур
 
Делаю я дерево в 3ds max. в качестве листвы использую текстуру, создаю plane крест накрест, потом натягиваю текстуру, всего на дерево уходит 8 таких plane. В материале задаю использовать multiple blend и alpha. и моя программа начинает тормозить, с 50 fps до 14. Если же убрать эти 8 полигонов, то чудесным образом тормоза исчезают. Что получается, я кривой или ксорс плохо работает с прозрачными текстурами или это не пилилось, а нужно использовать что-то другое?

Colossus 24.08.2011 12:14

Ответ: Тормоза при использовании прозрачных текстур
 
Ты не кривой, но похоже твои руки достаточно кривы, когда я делал подобное, у меня такого не случалось.;)

HolyDel 24.08.2011 12:36

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

Сообщение от pozitiffcat (Сообщение 199905)
всего на дерево уходит 8 таких plane.

каждый плейн конечно отдельным мешем? и в кадре тыща деревьев?
вообще все движка плохо работают с полупрозрачными поверхностями. потомучто их надо в общем случае сортировать от дальних к ближним. присмотрись к современным игрушкам - там альфаблендинга раз - и обсчелся. стараются решить как-то маской.

pozitiffcat 24.08.2011 13:03

Ответ: Тормоза при использовании прозрачных текстур
 
на сцену достаточно положить одно дерево из 100 полигонов и хана. Если вырезать 2 полигона с прозрачной текстурой, то тормозов как не бывало
ЗЫ. на разных видюхах пробовал

NitE 24.08.2011 13:24

Ответ: Тормоза при использовании прозрачных текстур
 
А тени включены ?

pozitiffcat 24.08.2011 13:24

Ответ: Тормоза при использовании прозрачных текстур
 
я тени и включал и выключал

NitE 24.08.2011 13:27

Ответ: Тормоза при использовании прозрачных текстур
 
Ну пойдее без теней должно в разы меньше тормозить. (Офф. примеры хорса намекают, что альфа + тени = жуткий торомз) есичо.

HolyDel 24.08.2011 13:32

Ответ: Тормоза при использовании прозрачных текстур
 
тогда это очень странно. если только к хорсу не прикрутили DepthPeeling включающийся автоматом при наличии объектов с альфой.

pozitiffcat 24.08.2011 13:39

Ответ: Тормоза при использовании прозрачных текстур
 
можт есть варианты что еще можно попробовать сделать?

HolyDel 24.08.2011 13:45

Ответ: Тормоза при использовании прозрачных текстур
 
вариант с маской эстетически не устраивает?

.Squid 24.08.2011 13:56

Ответ: Тормоза при использовании прозрачных текстур
 
Запостил бы свое дерево с кодом. Мне уже надоело в телепата играть.

pozitiffcat 24.08.2011 14:15

Ответ: Тормоза при использовании прозрачных текстур
 
visual studio 2010
в файле defender3d.cpp
bool low=false; //низкая графика
bool shadows=true; //рисовать тени
bool creategrass=true; //создавать траву вообще
(c) все права защищены :-D
Скачать (5 мб)

pozitiffcat 24.08.2011 17:33

Ответ: Тормоза при использовании прозрачных текстур
 
Сделал TGAшные текстуры, чуть получше на 10% производительность, но все же. Такая убогая графика как у меня и так тормозит, это не дело...

pozitiffcat 24.08.2011 17:41

Ответ: Тормоза при использовании прозрачных текстур
 

вот это уродство выдает 6-7 fps на gma 4500, я на этой видяхе умудрялся в asassins creed играть с 20 fps. Как так может быть? Никаких хитростей, отключив пост эффект и тени прирост в 15 fps, убрать все объекты кроме земли даст 50 fps, не выше.

FREE MAN 25.08.2011 00:10

Ответ: Тормоза при использовании прозрачных текстур
 
Согласен с pozitiffcat, когда используешь текстуры с маской или даже те же спрайты с маской , начинает резко падать производительность, как только не делал производительность не повышается с включенными тенями, без теней скорость прирастает но не на много . .Squid куда копать может подскажешь???

.Squid 25.08.2011 00:17

Ответ: Тормоза при использовании прозрачных текстур
 
А нефиг каждый клочек земли рисовать отдельным дипом. Да еще и грузить его каждый раз с винта.

Цитата:

Сообщение от Phyton (Сообщение 200029)
Согласен с pozitiffcat, когда используешь текстуры с маской или даже те же спрайты с маской , начинает резко падать производительность, как только не делал производительность не повышается с включенными тенями, без теней скорость прирастает но не на много . .Squid куда копать может подскажешь???

А у меня 8000 объектов в 992К полигонов с текстурой-маской выдают 105 фпс.
Копать в основы 3д графики.

Ky3R_94 25.08.2011 01:55

Ответ: Тормоза при использовании прозрачных текстур
 
Полигональные листья в кронах деревьев не катят? Из того же самого Treegenerator'а или аналогов?

Слава богу, 3dfx Voodoo уже далеко позади и даже встроенные видео могут тянуть намного больше, чем скрюченный цилиндр с 8ю plane'ами.

.Squid 25.08.2011 02:06

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

Сообщение от Ky3R_94 (Сообщение 200052)
Полигональные листья в кронах деревьев не катят

Ну, если игра о дереве и кроме него в кадре никого/ничего не будет.

pozitiffcat 25.08.2011 09:02

Ответ: Тормоза при использовании прозрачных текстур
 
Так как быть-то? Как отображать спрайтовую траву например?

PS. впринцепе конечному пользователю графического движка не нужно вдаваться в подробности как работает 3D графика. Он просто должен брать и пользоваться. Ну или хотябы вменяемый мануал. Тем более когда речь идет о платном двиге. ИМХО тот же самый Blitz3D и Leadwerks, куда более поинформативнее в этом плане, ты уж извини за прямоту, .Squid

pozitiffcat 25.08.2011 09:28

Ответ: Тормоза при использовании прозрачных текстур
 
Создаю instance. Но программа вываливается при попытке сделать xRenderWorld (типа доступ к нераспределенному участку памяти в твоей dll),
Делал instance так: создал объект xLoadMesh, потом в цикле расставил xCreateInstance...
xEntityPosition...
ЧЯДНТ?

moka 27.08.2011 02:40

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

Сообщение от pozitiffcat (Сообщение 200068)
PS. впринцепе конечному пользователю графического движка не нужно вдаваться в подробности как работает 3D графика. Он просто должен брать и пользоваться. Ну или хотябы вменяемый мануал.

Мануалов полно - ты говоришь о основах рендеринга. И знать их нужно, не важно чем ты там пользуешься.

Цитата:

Сообщение от pozitiffcat (Сообщение 200068)
Тем более когда речь идет о платном двиге.

100$ за двиг? Да я в это воскресенье на 300$ купил одни джинсы, кофточку и vibram fivefingers!
100$ - это стоимость движка "на пиво".

Цитата:

Сообщение от pozitiffcat (Сообщение 200068)
тот же самый Blitz3D

Это DX7, Там много знать не нада, да и вывезьти то что ты хочешь на экран вообще не удастся, ваще никак.

Цитата:

Сообщение от pozitiffcat (Сообщение 200068)
и Leadwerks, куда более поинформативнее в этом плане

Уху, разраб имеел с самого начала бюджет, и может позволить оутсорсеров. Тем более что там информативнее, глупые туторы? От них не поумнеешь, и если всех "конечных пользователей" водить за поводок, то результата от этого будет мало, кроме как сброда нытиков.

HolyDel 27.08.2011 09:46

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

А у меня 8000 объектов в 992К полигонов с текстурой-маской выдают 105 фпс.
инстансинг?

Цитата:

Да я в это воскресенье на 300$ купил одни джинсы, кофточку и vibram fivefingers!
да ты мажор. в моем родном городе - 100$ пол месячной зарплаты.

Цитата:

Так как быть-то? Как отображать спрайтовую траву например?
с маской тоже тормозит? или некрасиво очень? ну и конечно не рисовать каждую травинку отдельным дипом.

moka 27.08.2011 18:33

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

Сообщение от HolyDel (Сообщение 200252)
да ты мажор. в моем родном городе - 100$ пол месячной зарплаты.

Я вот и думаю, может спонсорством заняться?

Teoretik 04.10.2011 21:12

Ответ: Тормоза при использовании прозрачных текстур
 
А что такое дип?
Я покопал яндекс и по запросам dip deep дип - но ничего вразумительного не нашел.

Mr_F_ 04.10.2011 21:17

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

А что такое дип?
DrawIndexedPrimitive - такая функция в d3d.
заставляет видюху отрисовать как бы "объект", т.е. совокупность вертексного, индексного буфферов, стейтов.
чем меньше вызовов, тем лучше.

dsd 04.10.2011 21:53

Ответ: Тормоза при использовании прозрачных текстур
 
Нифига. Дип это программа чоб в глубину уйти.

moka 04.10.2011 22:23

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

Сообщение от dsd (Сообщение 204576)
Нифига. Дип это программа чоб в глубину уйти.

че? :4to:

dsd 04.10.2011 22:25

Ответ: Тормоза при использовании прозрачных текстур
 
вот че :)

moka 04.10.2011 23:52

Ответ: Тормоза при использовании прозрачных текстур
 
Ыг, речь шла о DIP. По незнанию программы из романа Лукьяненко, естественно не уловил юмора..

Teoretik 05.10.2011 01:10

Ответ: Тормоза при использовании прозрачных текстур
 
Спасибо!
Про глубину с Лукьяненько сразу и подумал.

Igor 06.10.2011 01:14

Ответ: Тормоза при использовании прозрачных текстур
 
Цитата:

Как отображать спрайтовую траву например?
Может быть шейдеры помогут?
В некоторых играх ими неплохо сделана листва деревьев.

Mr_F_ 06.10.2011 02:17

Ответ: Тормоза при использовании прозрачных текстур
 
шейдеры тут не причём.


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

vBulletin® Version 3.6.5.
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Перевод: zCarot