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=15405)

dsd 30.10.2011 16:11

Ответ: Странное.
 
а так?

NitE 30.10.2011 16:20

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

dsd 30.10.2011 21:49

Ответ: Странное.
 

Просто шум, ососнистая форма и фототекстура. Так лучше?

h1dd3n 30.10.2011 22:09

Ответ: Странное.
 
дак uv то поправь. скейл по вертикали поменьше бы

NitE 30.10.2011 22:10

Ответ: Странное.
 
Растянуто. Тебе нужно тайлить, либо текстуру намного более высокого разрешения.

Reizel 31.10.2011 02:05

Ответ: Странное.
 
Не геморойся пока со стволами. Сделай какую-нито реалистичную (и не однообразную) модель разветвления, тогда можно думать о текстурах)

dsd 31.10.2011 02:44

Ответ: Странное.
 
Это вопрос требующий некоторого времени для созерцания пародируемых объектов. даже у той же сосны начиная со второго левла ветвей идет уже не самая простая структура. Чем дольше думаю, тем меньше уверенности, что получится что-нить хотя бы качества моего недоландшафта. хотя идеи есть :)
пока для структуры сочинил это:

Код:

class tree{
/*
Вот у меня есть этот объект.
Что он должен знать?
Он должен суметь вычислить количество и позицию своих детей, угол поворота и масштаб для каждого ребенка.Знать родителя не должен.
*/
public:
static newgeom branch_mesh;
tree** child;
int number;
float3 pos;
float3 rot;
float3 scale;

//количество детей
int ch_num;
//constructor
tree(float3 p,float3 r,float3 s){
    pos=p;
    rot=r;
    scale=s;
    //это оно узнало, где оно и как в пространстве живет.
    //теперь оно узнает где конец. Сейчас неюгеом настроен на меш длиной 32 юнита
    float length=32;
    //вычислю координаты конца this ветки
    //для этого скопирую меш из меша
    Handle mesh=xCopyMesh(branch_mesh.mesh);
    xPositionEntity(mesh,pos.x,pos.y,pos.z);
    xRotateEntity(mesh,rot.x,rot.y,rot.z);
    xScaleEntity(mesh,scale.x,scale.y,scale.z);
    xTFormPoint(0,length,0,mesh,0);
    //безо всякой математики получилась нужная точка. Хвала разрабам.
    float3 ch_pos(xTFormedX(),xTFormedY(),xTFormedZ());

    //Пусть определится с количеством детей
    ch_num=xRand(2,4);
    //создам данные для детей это будет матрица флоат3 шириной в количество детей высотой в три
    //первая строка позиция,вторая угол, третья масштаб.
    float3 data[3][ch_num];
    //заполню строку позиции
    for(int i=0;i<ch_num;i++){data[0][i]=ch_pos;}
    //теперь надо определиться с поворотом.
    //очевидноБ что первое число отворот от оси родителя, а второе вращение
    //пусть веточки растут через примерно равное кол-во градусов.
    for(int i=0;i<ch_num;i++){data[1][i]=rot+float3(30.0+xRnd(-15,15),360.0*i/ch_num+xRnd(-15,15),0);}
    //пусть считает итоговый скейл детенышей
    for(int i=0;i<ch_num;i++){data[2][i]= scale*float3(0.5,0.5,0.5);}
    //создание детей
    child=new tree*[ch_num];
    for(int i=0;i<ch_num;i++){child[i]=new tree(data[0][i],data[2][i],data[3][i]);}
...
}

В принципе ничто не мешает добавить то-же самое по длине ветви с рандомным смешением вдоль её тела. Но это плохой вариант, на один ствол уйдет не одна сотня тыщь полигонов при хоть какой-то детализации и это не считая листвы. Тут долго думать надо, быстрей было б накидать и раскрасить их в тридэмаксе.

dsd 31.10.2011 23:43

Ответ: Странное.
 


Не деревья.


Reizel 01.11.2011 03:08

Ответ: Странное.
 
Первый скрин не годен, второй более чоткий, но коэффициент сужения веток должен быть в 2 раза больше)

dsd 01.11.2011 23:00

Ответ: Странное.
 

Все еще не деревья.

dsd 02.11.2011 00:25

Ответ: Странное.
 
А это правда, что я могу вместо зеленых кубиков шейдером в хорсе отрисовать трехмерную текстуру листвы как-то используя tex3D(s, t)?

Mr_F_ 02.11.2011 00:27

Ответ: Странное.
 
можешь, но вряд ли быстро
делал по этим докам, фпс нехило жрало:
http://graphicsrunner.blogspot.com/2...ering-101.html

Reizel 02.11.2011 11:48

Ответ: Странное.
 
Лучше наверно делать один квад на ветку, который будет с ней сонаправлен. На него навешать тексу листвы.

ПС вот нашел мои исходные деревья на блице
в проге дерево.exe надо нажать пробел для генерации нового дерева и подождать)

dsd 03.11.2011 00:50

Ответ: Странное.
 
Наверно я эстет и сноб, хотя для хорора пойдет только хищно ветками их научить дрыгать. :)

dsd 03.11.2011 17:40

Ответ: Странное.
 


Листва кульная, да?


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

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