|
Xors3D Графический движок с поддержкой DirectX9 |
29.07.2012, 14:13
|
#436
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Странное.
вроде бы получше.
на пробел поменять зерно для шума
на wasd крутить планету
на стрелки летать
Последний раз редактировалось dsd, 13.08.2012 в 19:28.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
29.07.2012, 16:16
|
#437
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Странное.
c->SetBlendMode(BM_ALPHA);
перед выводом текста надо поставить. текст выводится с альфой. дефолтный шейдер требует режим с альфой.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
31.07.2012, 20:30
|
#438
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Странное.
Сообщение от HolyDel
float my_floats[512][512];
Texture::Desc desc();
desc.Size(512,512);
desc.Bpc(4); //4 байта на канал. для флоата
desc.Cpp(1); //один канал на пиксель
desc.Data(my_floats);
Texture *tex = eng->CreateTexture(desc);
как то так.
|
не получается так ничего.
|
(Offline)
|
|
31.07.2012, 22:05
|
#439
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Странное.
попробуй пока явно поля позадовать:
desc.width = 512;
desc.height = 512;
desc.bpc = 4; //4 байта на канал. для флоата
desc.cpp = 1; //один канал на пиксель
desc.texels = my_floats;
|
(Offline)
|
|
31.07.2012, 23:08
|
#440
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Странное.
Сообщение от HolyDel
попробуй пока явно поля позадовать:
desc.width = 512;
desc.height = 512;
desc.bpc = 4; //4 байта на канал. для флоата
desc.cpp = 1; //один канал на пиксель
desc.texels = my_floats;
|
неа, так тоже не работает )
Может что-то из папки "source" заинклюдидь надо? ибо сам двиг собирался у меня из исходников без проблем.
|
(Offline)
|
|
31.07.2012, 23:13
|
#441
|
|
Ответ: Странное.
Сообщение от dsd
неа, так тоже не работает )
Может что-то из папки "source" заинклюдидь надо? ибо сам двиг собирался у меня из исходников без проблем.
|
если конструктор пустой по не нужно ставить скобки () после имени переменной, если их ставить то получается что декларируешь функцию, а не создаёшь экземпляр класса на стеке
|
|
|
Эти 2 пользователя(ей) сказали Спасибо за это полезное сообщение:
|
|
31.07.2012, 23:18
|
#442
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Странное.
jimon уже написал в чем дело
ибо сам двиг собирался у меня из исходников без проблем.
|
исходники с гугл-кода устарели. (и в проприетарной поставке их быть не должно).
если хочешь - я дам тебе доступ к сурсам на ассембле.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
01.08.2012, 19:41
|
#443
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Странное.
Сообщение от HolyDel
если хочешь - я дам тебе доступ к сурсам на ассембле.
|
я тут еще в базовых функциях движка и с++ путаюсь. Не надо мне доступа, я все сломаю.
И еще, как мне обычную текстуру сделать с argb или как там, в общем 4 канала по 256 цветов?
Мне показалось или движок без проблем прожевывает меши с 2-3 миллионами точек и 4 миллионами полигонов в одной поверхности?
Кстати если надо могу сбацать бесшовный шум типа того что на текстуре с кружками, не бесшовный и хрень которая будет показывать любой участок из здоровенной карты шума в несколько лямов пикселей шириной.
Последняя хрень есть почти готовая, выдает по координатам высоту.
|
(Offline)
|
|
01.08.2012, 20:18
|
#444
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Странное.
Не надо мне доступа, я все сломаю.
|
read only
И еще, как мне обычную текстуру сделать с argb или как там, в общем 4 канала по 256 цветов?
|
desc.bpc = 1;
desc.cpp = 4;
вообще тут:
число байт на канал - должно быть 1 - 256 цветов, 2 - half-float или 4 - float.
число каналов - должно быть от 1-го до 4.
Мне показалось или движок без проблем прожевывает меши с 2-3 миллионами точек и 4 миллионами полигонов в одной
поверхности?
|
от видеокарты зависит. сам движок ограничений не накладывает. это же не блиц
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
02.08.2012, 23:58
|
#445
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Странное.
вроде научился раскрашивать меш поприкольней.
ХолиДел, вот рисовать текстуры я теперь умею, а обратно построить массив данных из текстуры тоже можно?
MouseHit() и MouseDown() чето найти никак не могу. И аналоги типа TForm есть?
теперь по иксу "x" в рандомном месте на меше появится чето типа кратера, с глюками если попадает на края меша. по пробелу сделать новую планету.
зы: а из далека уже ничего если добавить меш для воды, облаков и вывернутый для атмосферы вообще красотища будет.
Последний раз редактировалось dsd, 13.08.2012 в 19:28.
|
(Offline)
|
|
03.08.2012, 00:51
|
#446
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Странное.
ХолиДел, вот рисовать текстуры я теперь умею, а обратно построить массив данных из текстуры тоже можно?
|
пока нет такого функционала. добавить его - парой строчек можно, но сборку новую пока собирать рано.
И аналоги типа TForm есть?
|
есть векторная математика.
можно получить матрицу трансформации ноды(пивота) и множить нужный вектор на нее.
KeyHit, KeyDown с 1 или 2.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
05.08.2012, 00:22
|
#447
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Странное.
добавил слегка анимированную воду спертую из сэмплов, плывущие облачка и атмосферу без шейдера.
фпс уныл из-за урагана порвавшего все провода в городе ) а с батареи оно много не дает.
а как в шейдерах сэмплеры настраивать?
Как полупрозрачность делать? а то discard не красиво и не то.
|
(Offline)
|
|
05.08.2012, 01:11
|
#448
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Странное.
сэмплеры называются фиксированными именами:
sampler2D texture0
sampler2D texture1
sampler2D texture2
...
sampler2D texture31
в клиентском коде текстура задается к ентити или материалу так:
ent->SetTexture(some_texture,0);
вот второй параметр и связывает текстуру с семплером в шейдере.
полупрозрачность так:
и в альфу (в 4-й компонент выходного вектора фрагментного шейдера) писать некоторое значение меньше 1.
Последний раз редактировалось HolyDel, 05.08.2012 в 13:20.
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
06.08.2012, 13:19
|
#449
|
Мастер
Регистрация: 13.06.2011
Сообщений: 1,103
Написано 481 полезных сообщений (для 1,836 пользователей)
|
Ответ: Странное.
Сообщение от HolyDel
сэмплеры называются фиксированными именами:
sampler2D texture0
sampler2D texture1
sampler2D texture2
...
sampler2D texture31
в клиентском коде текстура задается к ентити или материалу так:
ent->SetTexture(some_texture,0);
вот второй параметр и связывает текстуру с семплером в шейдере.
|
тащемта я о чем то таком как в хлсл спрашивал:
texturediffuseTexture : TEXTURE_0; // текстура
// описываемsampler
sampler diffuseSampler =sampler_state
{
Texture = <diffuseTexture>; // привязываем текстуру
// устанавливаем адресацию координат
AddressU= WRAP;
AddressV= WRAP;
AddressW= WRAP;
// устанавливаем фильтрацию
MinFilter= ANISOTROPIC;
MagFilter= ANISOTROPIC;
MipFilter= ANISOTROPIC;
// устанавливаем уровень фильтрации
MaxAnisotropy= 4;
};
|
(Offline)
|
|
06.08.2012, 13:29
|
#450
|
☭
Регистрация: 26.09.2006
Сообщений: 6,035
Написано 1,474 полезных сообщений (для 2,707 пользователей)
|
Ответ: Странное.
в glsl такого нет.
настройки сэмплера задются в клиентском коде:
tex->SetRepearMode
->SetFilter
и т.д.
уровень анизотропной фильтрации пока можно задать только при создании текстуры
|
(Offline)
|
|
Сообщение было полезно следующим пользователям:
|
|
Ваши права в разделе
|
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 22:27.
|