[ Новые сообщения · Участники · Правила форума · Поиск · RSS ]
  • Страница 1 из 1
  • 1
как убрать ненужные surface-ы?
ljedayДата: Суббота, 20 Июня 2009, 00:56 | Сообщение # 1
Начинающий
Группа: Пользователи
Сообщений: 12
Награды: 0
Замечания: 0%
Статус:
Итак, у меня есть уровень сделанный в 3D World Studio. Там очень много лишних поверхностей от которых мне необходимо избавиться. Подскажите, как это можно сделать?
Я пробовал сделать так:

level=LoadAnimMesh( "levels\test\colony.b3d" ) ;загрузка уровня
For i=1 To CountSurfaces(level)
surf=GetSurface (level,i) ;берём поверхность
surf_brush=GetSurfaceBrush (surf) ;берём браш
brush_tex=GetBrushTexture (surf_brush,0) ;берём текстуру
tex_name$=Lower(TextureName(brush_tex)) ;узнаём имя текстуры
If Instr(tex_name$,"null.jpg") ;если имя текстуры "null.jpg"
FreeTexture brush_tex ;удаляем текстуру
ClearSurface surf ;удаляем поверхность
End If
Next

Но ничего не работает. bash И текстура и поверхность не исчезают...

 
ljedayДата: Понедельник, 22 Июня 2009, 01:53 | Сообщение # 2
Начинающий
Группа: Пользователи
Сообщений: 12
Награды: 0
Замечания: 0%
Статус:
Если под медией подразумевается сам уровень, то вот он.
Прикрепления: test.rar (508.1 Kb)
 
ljedayДата: Понедельник, 22 Июня 2009, 02:01 | Сообщение # 3
Начинающий
Группа: Пользователи
Сообщений: 12
Награды: 0
Замечания: 0%
Статус:
Чтобы запустить уровень в 3D World Studio надо сделать следующее:
1) кинуть colony4.3dw в папку "...\3D World Studio\Maps";
2) кинуть текстуры в папку "...\3D World Studio\Materials\AVP".
Там на уровне одна стена недостроена, я на ней эксперименты провожу. Все ненужные поверхности закрашены фиолетовой текстурой "null.jpg".
Надеюсь на вашу помощь. pray
П.С. Извините, что долго не отвечал.
 
ljedayДата: Понедельник, 22 Июня 2009, 14:42 | Сообщение # 4
Начинающий
Группа: Пользователи
Сообщений: 12
Награды: 0
Замечания: 0%
Статус:
Мне это нужно для экономии полигонов. Мой уровень состоит из кубов, каждый куб имеет 12 полигонов. Если удалить ненужные сюрфейсы, то куб превратится в поверхность с 2-мя полигонами.
А весь это гемор нужен для нормальной работы фонарика.
Предположим есть стена состоящая из одного куба, светим на неё фонариком и наслаждаемся глюками. Если сделать такую же стену из множества кубиков, то пятно света будет выглядеть намно лучше. Чем больше полигонов на стене, тем лучше выглядит пятно света. А теперь представьте сколько это будет лишних полигонов! И умножте на 2, т.к. используется копия уровня в качестве буфера... Получается очень много!
Я долго ломал голову над тем, как это сделать в 3D World Studio или как увеличить количество полигонов на поверхности, но так ничего придумать и не смог... bash Пришёл к выводу, что это невозможно в этом редакторе. Если я ошибаюсь, то подскажите как это делается, тогда вопрос будет исчерпан. lumped


Сообщение отредактировал ljeday - Понедельник, 22 Июня 2009, 14:52
 
ljedayДата: Понедельник, 22 Июня 2009, 23:08 | Сообщение # 5
Начинающий
Группа: Пользователи
Сообщений: 12
Награды: 0
Замечания: 0%
Статус:
Ну шейдеры мне пока рано писать. faint А в и-нете я нашёл только один более или менее нормальный пример фонарика...
Вот для наглядности сделал два скрина.
1) стена из одного куба:
http://pic.ipicture.ru/uploads/090622/e1R2pRQBTK.jpg
2) стена из нескольких кубов:
http://pic.ipicture.ru/uploads/090622/7GATh2CPRk.jpg
Ну а по поводу моего вопроса в первом посте есть какие-нибудь предложения?


Сообщение отредактировал ljeday - Понедельник, 22 Июня 2009, 23:25
 
ljedayДата: Понедельник, 22 Июня 2009, 23:49 | Сообщение # 6
Начинающий
Группа: Пользователи
Сообщений: 12
Награды: 0
Замечания: 0%
Статус:
alexey23b, это он и есть. biggrin Правда я использую базовую версию этого фонарика.
 
  • Страница 1 из 1
  • 1
Поиск: