Перейти к контенту

[SoC] Вопросы по SDK


faniloko

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

Такой нубский вопрос,как локу перегнать в 3dsmax 7,8 ???

ато я нигде немогу найти нормального обьяснения :cray5:

Прошу прощения за банальный вопрос-Зачем всю локу перегонять в один объект? :shok:

В среднем на одной локе от 1 до 4 милионов полигонов,это сильная нагрузка на систему(если потянет).

Достаточно перегнать в стандартный LE режим и редактировать объекты по отдельности.Есть рабочие плагины импорта и экспорта в 3dsMax формата Objekt.

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


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

Утилита от bardaka,

Отрываешь converter.ini

Ищи строку:

[1935_config]

$game_data$ = E:\Games\build_1935\gamedata\ поменяй путь к сдк

$game_levels$ = E:\Games\build_1935\gamedata\levels\ поменяй путь к сдк

Перебиваешь в стандарт LE. Запускаешь LE свою локу,узнаёшь номер своего объекта(....._part0560.object)

В максе импортируешь этот меш и делай с ним что хочешь.

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


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

Ошибка настройки шейдеров статических объектов.

Касательно сетки:

Прозрачная металлическая сетка

Double side yes

Engine def_aref

Compiler default

Material material/setka_rabica

Настройка шейдеров и материалов для статических объектов:

Terrain Grass

Double side no

Engine terrain/grass

Compiler default

Material material/grass

Terrain Sand

Double side no

Engine terrain/sand

Compiler default

Material material/earth

Terrain Asphalt

Double side no

Engine terrain/asfalt

Compiler default

Material material/asphalt

Пробиваемый металлический лист

Double side no

Engine default

Compiler default

Material material/metal_plate

Прозрачная металлическая сетка

Double side yes

Engine def_aref

Compiler default

Material material/setka_rabica

Обычная металлическая поверхность

Double side no

Engine default

Compiler default

Material material/metal

Деревянные доски

Double side no

Engine default

Compiler default

Material material/wooden_board

Толстые деревянные изделия

Double side no

Engine default

Compiler default

Material material/wood

Бетон

Double side no

Engine default

Compiler default

Material material/concrete

Кирпичная кладка

Double side no

Engine default

Compiler default

Material material/bricks

Шифер, толь

Double side no

Engine default

Compiler default

Material material/shifer

Штукатурка

Double side no

Engine default

Compiler default

Material material/stucco

Земляная насыпь

Double side no

Engine default

Compiler default

Material material/earth

Невидимая плоскость, указывающая лестницу

Double side no

Engine def_vertex

Compiler def_kolizion_vertex

Material material/fake_ladders

Невидимая плоскость, ограждающая проход персонажу

Double side yes

Engine def_vertex

Compiler def_kolizion_vertex

Material material/fake

Разбиваемое стекло

Double side yes

Engine models/window

Compiler def_vertex

Material objects/glass

Вода

Double side no

Engine effects/water

Compiler def_vertex

Material material/water

 

Некоторые настройки не подходят к SDK0.7

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


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

Мод с участием Сидоровича для ЗП Slayer_mod_STALKER_COP

 

Скрипт на Сидоровича (bind_trader.script):

-----------------------------------------------------------------------------------
-- Sidor etc binding
-----------------------------------------------------------------------------------

function bind(obj)
    local new_binder = trader_object_binder(obj)
    obj:bind_object(new_binder)
end

------------------------------------------------------------------------------------
class "trader_object_binder" (object_binder)

function trader_object_binder:__init(obj) super(obj)
    self.loaded = false
end


function trader_object_binder:reload(section)
    object_binder.reload(self, section)
end

function trader_object_binder:reinit()
    object_binder.reinit(self)

    db.storage[self.object:id()] = { }

    self.st = db.storage[self.object:id()]
end

function trader_object_binder:update(delta)
    object_binder.update(self, delta)

    -- Апдейт торговли
    if self.object:clsid() == clsid.script_trader then
        trade_manager.update(self.object)
    end

    local st = db.storage[self.object:id()]
    if st ~= nil and st.active_scheme ~= nil then
        xr_logic.try_switch_to_another_section(self.object, st[st.active_scheme], db.actor)
    end
    
    if self.st.active_section ~= nil then
        xr_logic.issue_event(self.object, self.st[self.st.active_scheme], "update", delta)
    end
end

function trader_object_binder:net_spawn(sobject)
    if not object_binder.net_spawn(self, sobject) then
        return false
    end

    local on_offline_condlist = db.storage[self.object:id()] and db.storage[self.object:id()].overrides and db.storage[self.object:id()].overrides.on_offline_condlist
    if on_offline_condlist ~= nil then
        xr_logic.pick_section_from_condlist(db.actor, self.object, on_offline_condlist)
    end

    if not self.object:alive() then
        return true
    end
    
    if alife():object(self.object:id()) == nil then
        return false
    end

    db.add_obj(self.object)
    if self.object:clsid() == clsid.script_trader then
        self.object:set_trader_global_anim("idle_spinka")
        smart_terrain.setup_gulag_and_logic_on_spawn( self.object, self.st, sobject, modules.stype_trader, self.loaded)
    end
    
    return true
end

function trader_object_binder:net_destroy()
    xr_sound.stop_sounds_by_id(self.object:id())

    local st = db.storage[self.object:id()]
    if st and st.active_scheme then
        xr_logic.issue_event(self.object, st[st.active_scheme], "net_destroy")
    end

    if db.offline_objects[self.object:id()] then
        db.offline_objects[self.object:id()].level_vertex_id = self.object:level_vertex_id()
        db.offline_objects[self.object:id()].active_section = db.storage[self.object:id()].active_section
    end

    db.del_obj(self.object)
    db.storage[self.object:id()] = nil
    object_binder.net_destroy(self)
end

function trader_object_binder:net_save_relevant()
    return true
end

function trader_object_binder:save(packet)
    set_save_marker(packet, "save", false, "trader_object_binder")
    object_binder.save(self, packet)
    xr_logic.save_obj(self.object, packet)
    if self.object:clsid() == clsid.script_trader then
        trade_manager.save(self.object, packet)
    end
    set_save_marker(packet, "save", true, "trader_object_binder")
end

function trader_object_binder:load(reader)
    self.loaded = true
    set_save_marker(reader, "load", false, "trader_object_binder")
    object_binder.load(self, reader)
    xr_logic.load_obj(self.object, reader)
    if self.object:clsid() == clsid.script_trader then
        trade_manager.load(self.object, reader)
    end
    set_save_marker(reader, "load", true, "trader_object_binder")
end

 

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

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


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

С права над рабочей панелью есть:

список объектов либо(object_list)

 

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


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

Винда не причём,либо конвертер менять либо что-то в левел не хватает.

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


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

Отсутствуют Lod текстуры,для правильной декомпиляции карты - в батнике допиши команду (.................-mode le -with_lods)

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

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


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

Настройка воды:

Вода

Double side no

Engine effects/water

Compiler def_vertex

Material material/water

 

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


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

Настройка бьющегося стекла:

Engine models/window

Compiler def_vertex

Material objects/glass

Double side yes

 

 

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


Ссылка на сообщение
Здравствуйте, у меня следующий вопрос:

Как создавать тайники в сдк?

Ставишь inventory_box со ссылкой на логику:

[logic]
cfg = scripts\treasure_inventory_box.ltx

И в настройках указываешь Стори ид-- (agr_secret_0027) соответственно нужно прописать gamedata\config\game_story_ids.ltx

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


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

Максимальное количество видов Lod объектов на одной локации = 64 вида.

При этом соотношении - получается level_lods.dds равный 2048*2048.Большего размера текстура не создастся.

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


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

Sad,

Это происходит при добавлении моделей из других версий СДК.Вспомни что последнее добавлял и попробуй удалять периодично запуская компилятор.

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


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

Вампир35,

Переустанови дефлаут сектор во вкладке сектора.

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


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

Попробуй сделать инсталяторы с помощью Microsoft Application Compatibility Toolkit

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

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


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

Пример:

converter -omf -skls krovosos_animation.omf
pause

 

Если речь идёт о конкретной анимации, а не скомпом, то можно и так:

converter -omf -skl название_анимации имя_файла_с_анимациями.omf

ColR_iT

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

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


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

Если есть вылеты при компиляции, декомпиляции и т.д. - заходим по адресу:

C:\Program Files\X-Ray SDK\level_editor\logs\ - для 0.4

C:\Program Files\X-Ray CoP SDK\editors\logs\ для 0.7

И там будут лог файлы с Вашими ошибками. Выкладывайте на форуме чтоб мы могли понять в чём причина и как исправить.

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


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

НОМ - это очень важная вещь для оптимизации как и сектора и порталы!

НОМ разгружает визуализацию статических объектов в игре. За НОМ стенкой статика выгружается(исчезает).

Стенки НОМ ставятся не только в объекты(дома, контейнеры, бетонные заборы и т. д.) ими нужно разбивать терейн. В основном это делается по середине дорог, холмов, вокруг подземных объектов на локации.

Представьте Вы идёте вдоль бетонного забора внутри которого стоит НОМ стенка - Вы видите только сам забор и территорию на локации что по этой стороне забора. А вот что касаемо за забором, в данный момент, - прозрачная пустота, нет никакой статики. Как только вы доберётесь до края этого забора - то встаньте по средине, увидите и с правой и с левой стороны всё на объекты месте. Теперь вы двигаетесь по противоположной стороне - соответственно всё исчезает с обратной стороны.

PS.

В предшествующих уроках по 0.4 СДК - был урок о создании НОМ объекта из геометрии статического путём экспорта и импорти LWO.

Это не правильно. НОМ объекты должны иметь самое минимальное количество полигонов, обратите внимание что геометрия всех ном объектов на локации колеблются от 1кб и до 100кб. Если же создавать НОМ путём "экспорта и импорти LWO" то в итоге геометрия всех ном объектов превысит десятки мб. В итоге прерывистое движение камеры, безлоговые вылеты и многое другое.

В итоге - без НОМ плохо, а с неправильным ещё хуже!

  • Полезно 2

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


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

Не находит локацию, смотри game_levels - там прописан level ID локи. И ещё, не забыть скопировать правленные конфиги из СДК в папку с игрой.

Изменено пользователем genior
  • Полезно 1

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


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

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