Все посты %s в %S - AMK Team
Перейти к контенту

Редактирование движка X-Ray


Rolan

Рекомендуемые сообщения

Уважаемые знающие, пытаюсь добавить в первый рендер шейдер lightplanes. То что получается - в скриншотах, это кто виноват? А именно - выдвинутая вперед текстура, и почему то не круглая а многоугольная. Такой же шейдер на втором рендере и круглая текстура, и на своем месте находиться.
ТЧ 1.0007

function normal        (shader, t_base, t_second, t_detail)
  shader:begin      ("model_def_lplanes","base_lplanes")
      : fog            (false)
      : zb            (true,false)
      : blend       (true,blend.srcalpha,blend.one)
      : aref        (true,0)
      : sorting     (2, true)
  shader:sampler      ("s_base")      :texture  (t_base)
end

index.php?act=attach&type=post&id=4194

Поделиться этим сообщением


Ссылка на сообщение
В 20.10.2017 в 19:48, Zagolski сказал:

А зачем ты этот шейдер на линзу ставишь? Значит не подходит он для нее. Подобное будет, если и любой из серии x наложить. На линзу лучше transparent делать.

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

Изменено пользователем Winsor

Поделиться этим сообщением


Ссылка на сообщение

Уважаемые, подскажите пожалуйста - как повернуть онлайновый объект (не НПС) вокруг своей оси?
Пытаюсь так:

Движок

Скрытый текст

void CScriptGameObject::SetRotation(const Fvector &rot)
{
    object().Direction().setHP(rot.x, rot.y);
    CKinematics *pK = PKinematics(object().Visual());
    if (pK)
    {
        pK->CalculateBones_Invalidate();
        pK->CalculateBones();
    }
    CSE_ALifeDynamicObject* se_obj = object().alife_object();
    if (se_obj)
    {
        object().XFORM().getXYZ(se_obj->angle()); //запись в o_Angle
    }
}

 

 

Скрипт:

Скрытый текст

local sobj = create("televizor",....)
level.client_spawn_manager():add(sobj.id, 0,
            function (dp, id, obj)
                obj:set_direction(vector():set(0,1.57,0))
            end
        , nil)

 

 

Пытался и радианы и градусы передавать - с объектом ничего не происходит, визуально он свое положение не меняет.

Изменено пользователем Winsor

Поделиться этим сообщением


Ссылка на сообщение

ТЧ 1.0007

Ну с серверным объектом все нормально. в скрипты экспортирован o_Angle. По аналогичной схеме задаю ему при спавне угол и единственное - надо перевести online/ofline - и он поворачивается.

Но

1) данная схема почему то не "поворачивает" НПС - только обычные "неживые" объекты.

2) хочется повернуть без перевода offline/online. т.е. оперировать клиентским объектом.

Поделиться этим сообщением


Ссылка на сообщение

Я бы от греха подальше отказался бы от сохранения и восстановления LUA_TLIGHTUSERDATA,LUA_TFUNCTION,LUA_TUSERDATA,LUA_TTHREAD.

Этих достаточно: LUA_TNIL, LUA_TBOOLEAN,  LUA_TNUMBER , LUA_TSTRING, LUA_TTABLE. саму реализацию в xp-dev я не смотрел, но эти типы прекрасно сериализуются в IWriter/IReader. CRegistryHelperProcess помогает записать/прочитать в сейв. причем все реализуемо с той механикой, которая уже есть в движке оригинальном.

 

Поделиться этим сообщением


Ссылка на сообщение
В 29.11.2017 в 01:10, AndreySol сказал:

Может кто делал реализацию ?

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

В 02.12.2017 в 18:00, AndreySol сказал:

отступ текстового описания

если речь идет о классе CUIItemInfo - то там все параметры отсnупов и иже с ними загружаются с xml конфигов.

В 29.11.2017 в 00:41, WinCap сказал:

отдельные статики для каждого столбца

можно переопределить CUIListItem , и уже в нем делать специальные колонки, например, для иконок.

Изменено пользователем Winsor

Поделиться этим сообщением


Ссылка на сообщение

Уважаемые знающие - есть ли возможность реализации какой либо анимации без ее наличия в худе оружия, например - удар прикладом. Делать к каждому стволу в моде такое - это ж устанешь... Как то же НПС бьются прикладом, и без этой анимации в худе? разъясните пожалуйста.

Поделиться этим сообщением


Ссылка на сообщение
16 часов назад, AndreySol сказал:

переход на CUIListItem

вот это.

 

16 часов назад, AndreySol сказал:

моноширинных шрифтов

если дружите с графическими пакетами - можете нарисовать свой шрифт. моноширинного в ТЧ я не видел.

Поделиться этим сообщением


Ссылка на сообщение
Скрытый текст
1 час назад, BFG сказал:

тем более у вас через пару недель релиз вроде предновогодний, как обещал ваш самый главный тестер

никто не обещал... О_О :dash2: Вот НИ тестерам с нового года обещали - это да, слишком много изменений накопилось для этого.

Это не пожелалки тестеров - удар прикладом как самый простой вариант. Меня интересует сама возможность создания анимации, не привязанной к модели.

Поделиться этим сообщением


Ссылка на сообщение
В 09.12.2017 в 17:13, AndreySol сказал:

Откуда конфиг может заранее учесть, описание какого предмета будет выведено ? Значит этот отступ задается в движке ? Вот только где ?

так... можно скриншот, чтобы было понятно о чем разговор идет? выделите рамкой что именно интересует.

Поделиться этим сообщением


Ссылка на сообщение

Это все задается через конфиги.UIItemInfo.cpp. 

Всего разбирается детально три типа итемов - артефакт CUIArtefactParams , оружие CUIWpnParams, броня CUIOutfitParams. остальные выводятся стандартным блоком. как опредлить тип итема - думаю по коду разберетесь.

Изменено пользователем Winsor
  • Согласен 2

Поделиться этим сообщением


Ссылка на сообщение

У нас наверное разные 1.0007

xr_3da\xrGame\ui\UIOutfitParams.cpp

===

хотя, да. возможно это уже мое расширение. Но тем не менее - это не отменяет того факта что все задается через конфиг. изучайте исходники - там указан xml файл, с которого все загружается. дальше - по конкретным элементам смотрите координаты.

Изменено пользователем Winsor

Поделиться этим сообщением


Ссылка на сообщение
В 14.12.2017 в 23:23, dsh сказал:

как другим помочь, так не, мое

не понятна агрессия по данному поводу, да ладно. Там где я могу - там я помогаю. содержимое данного класса не относиться к вопросу, тем более у меня переписаны и другие классы вывода информации для итемов, т.е. человек не сможет использовать "мой" класс без остальных изменений в классе CUIItemInfo. На свои вопросы, я к сожалению, так же не всегда получаю ответы, приходится разбираться самому.

Вот Вам класс.

https://drive.google.com/file/d/1-zIzxMqteZvmsd-2rkOlT58HLEnP4_Wc/view?usp=sharing
https://drive.google.com/file/d/1FnpLY4ysZYzn-FAGqa9EC-1omwuhv3yX/view?usp=sharing

Помог?

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

void CUIItemInfo::Init(LPCSTR xml_name) и увидеть что нет там сдвигов - хоть давай я ему исходники своего класса - хоть не давай - ну не поможет.

В 15.12.2017 в 07:50, Earth2Space сказал:

@Winsor так 

или

?

UIOutfitParams - так называется файл, где описан класс CUIOutfitParams

 

В 15.12.2017 в 15:44, AndreySol сказал:

конкретного я не увижу

ну куда уж конкретнее.... Движок не делает сдвиг элементов UI , вся разметка описана в конфигах xml. Вы не можете конфиг найти? или каким образом определяется тип итема?

Изменено пользователем Winsor

Поделиться этим сообщением


Ссылка на сообщение
В 18.12.2017 в 23:43, AndreySol сказал:

который вылазит за вертикальный размер, вместо обрезания по границе контрола текст отобразится полностью

За это отвечает отдельный параметр в конфиге xml - complex_mode для текста в статике (либо выводить в одну строчку либо по ширине контрола переносить строки). Есть еще попытка поддерживать нормальный wordwrap через EElipsisPosition - но в 1.0007 код закомменчен - разработчики не доделали. 

Поделиться этим сообщением


Ссылка на сообщение

Добрый день.

ТЧ... Вопрос про многострадальные Болота - собранные билдовские и не билдовские - в движке на данной локации чудовищно быстро утекает куда то память. Кто-то пытался понять что не так с данной локацией и что именно в движке "утекает"? Если это есть на Болотах - то и на остальных локациях происходит аналогичный процесс - просто не так быстро.

Поделиться этим сообщением


Ссылка на сообщение
  • Недавно просматривали   0 пользователей

    • Ни один зарегистрированный пользователь не просматривает эту страницу.
×
×
  • Создать...