forum.boolean.name

forum.boolean.name (http://forum.boolean.name/index.php)
-   3D-программирование (http://forum.boolean.name/forumdisplay.php?f=12)
-   -   Несколько вопросов по Блитз3Д (http://forum.boolean.name/showthread.php?t=3477)

ABTOMAT 29.05.2007 20:18

Несколько вопросов по Блитз3Д
 
Вопросы:
1. Как можно взаимодействовать с вершинами 3Д-модели? Вот, напримеря знаю номер вершины, которую нужно передвинуть, как это сделать средствами Blitz?
2. Как можно перемещать вершины не в пространстве, а по текстурным координатам? (опять же, если я знаю номар этой точки)
3. Как узнать местоположение вершины на экране?
4. Как можно заствить рендерить не в том разрешении, которое установлено, а задать его (с целью отрендерить в текстуру, в отражение, например)?
5. как можно разбить сурфэйс? Вот примерная схема того, что мне надо:


З.Ы. если у кого-то имеется чтиво по этому поводу, буду рад ссылке *01
Заранеее спасибо за ответы.

alcoSHoLiK 29.05.2007 20:41

Re: Несколько вопросов по Блитз3Д
 
Описание команд, манипулирующих вершинами, можно найти в справке: 3D category -> Surface.

Чтобы отрендерить в текстуру, надо сделать текущим буфер текстуры.
Код:

SetBuffer TextureBuffer(texture)
;настроить камеру и вьюпорт
RenderWorld
SetBuffer BackBuffer()


ABTOMAT 29.05.2007 20:50

Re: Несколько вопросов по Блитз3Д
 
alcoSHoLiK, за п.1 спасибо, почитаю.
Кстати, русского чтива на эту тему нет?
Как поставить буфер текстуры я знаю, но как поменять разрешение?

Raiter 29.05.2007 20:54

Re: Несколько вопросов по Блитз3Д
 
CreateTexture ( width,height[,flags][,frames] ) ;)
CreateTexture RenderTexture(512,512)

ABTOMAT 29.05.2007 21:03

Re: Несколько вопросов по Блитз3Д
 
Не, вы не поняли. Мне нада поменять разрешение самого рендера с целью увеличения производительности.

alcoSHoLiK 29.05.2007 21:55

Re: Несколько вопросов по Блитз3Д
 
Надо вручную. Рендеришь в текстуру, масштабируешь ее, потом накладываешь. Отрендерить участок меньших размеров можно, предварительно задав Viewport.

ABTOMAT 29.05.2007 22:00

Re: Несколько вопросов по Блитз3Д
 
alcoSHoLiK, как задать этот Viewport? Это будет влиять на производительность?

moka 29.05.2007 22:04

Re: Несколько вопросов по Блитз3Д
 
2. VertexTexCoords. Для изменения координат на текстуре. (Подсказка: 0-1 вся текстура, а не по пикселям)
3. Коммандами VertexX, VertexY, VertexZ узнаёшь координаты вершины, далее делаешь CameraProject в эти координаты, далее у тебя будут 2 координаты, возвращаемые коммандами: ProjectedX, ProjectedY.
5. Тут уже сложно, нужно писать непростой алгоритм, строк так на 100. Смотри в сторону LoD (Level of Detail), как-раз то что тебе и нужно, только ЛоД обычно уменьшает, а тебе просто наоборот. Что-то кстать видел в стандартных примерах.

Если я пишу не слишком раскрыто, точнее не даю примеров или что-то подобное, то не обижайся, но просто я за то что-бы каждый кто обращается за помошью, не делал в итоге копи-паст, а сам создавал по чейто теории что-либо, так скилл наберётся у тебя, и у всех кто спрашивает, так лучше поверь ;)

Цитата:

alcoSHoLiK, как задать этот Viewport? Это будет влиять на производительность?

CameraViewPort

ABTOMAT 29.05.2007 23:14

Re: Несколько вопросов по Блитз3Д
 
ок, почти со всем разобрались, только:
будет ли CamViewport влиять на производительность?
нету ли у кого чтива насчёт сурфейсов, а то стандартного хэлпа маловато будет.

alcoSHoLiK 29.05.2007 23:33

Re: Несколько вопросов по Блитз3Д
 
Чем меньше вьюпорт (окно просмотра), тем больше производительность.

ABTOMAT 29.05.2007 23:40

alcoSHoLiK, пасибо. :)
А вот, например, я хочу отрендерить отражение в более низком разрешении - то я во сколько раз уменьшаю ВьюПорт, во столько же раз и увеличиваю CamZoom, так?

Upd:
Да, кстати, ещё 1 вопрос:
Как спроецировать координаты из 3Д на плоскость экрана я понял, а как провернуть обратное? Например, у меня есть Курсо, который бегает по плоскости экрана и террайн. При клике мыши нужно определять ту точку террайна, куда указал курсор. Как это провернуть? (известны 2Д координаты курсора на экране и имеется террайн)?

moka 30.05.2007 00:08

Re: Несколько вопросов по Блитз3Д
 
CameraPick - нужно только 2 координаты, из плоскости экрана ;)

ABTOMAT 30.05.2007 00:15

Re: Несколько вопросов по Блитз3Д
 
И последнее: ни у кого не завалялось чтива про сурфейсы?


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

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