Jump to content

Замена моделей, коллизии, извечный вопрос)


Recommended Posts

Решил заменить все дома в сф. Один дом создал для проверки. состряпал скрипт, по образцу. И вот что получилось: если повернутся к модели то она исчезает, но коллизия появляется. А если отвернутся то модель появляется, коллизия исчезает, ну и текстуры не наложены.

658e9d80643c.png

Вот скрипт:

local wheels = { 
    {"building01",10983}, 
    {"building01",11143}, 
} 
  
function replace( ) 
    for i,v in pairs( wheels ) do 
        engineImportTXD( engineLoadTXD ( "models/"..v[1]..".txd" ),tonumber( v[2] ) ) 
        engineReplaceModel( engineLoadDFF( "models/"..v[1]..".dff", 0 ),tonumber( v[2] ) ) 
        engineReplaceCOL( engineLoadCOL( "models/"..v[1]..".col" ),tonumber( v[2] ) ) 
    end 
end 
setTimer( replace,1000,1 ) 

Добавлю что: и модельку и лод хочу заменить на оду и ту же модель, текстуру и коллизию(всеравно лоу поли)

Вот сам ресурс на всякий случай:

http://zalil.ru/32599559

Если не понятно, то вот схема:

3bcf8cd07aef.jpg

Link to comment

коллизия всегда невидима, чета путаешь при пояснениях.

видео сделай, потому то на словах ты не можешь пояснить.

о некорректной текстуре итак кричит дебаг на скрине

Link to comment

WARNING: san_fierro_2222\client.lua:8: Bad 'txd' pointer @ 'engineImportTXD'(1)

сообщение по 2раза за запуск

local wheels = { 
    {"building01", 10983}, 
    {"building01", 11143}, 
} 
  
function replace( ) 
    for i,v in pairs( wheels ) do 
        engineImportTXD ( engineLoadTXD ( v[1]..".txd" ),tonumber( v[2] ) ) 
        engineReplaceModel ( engineLoadDFF( v[1]..".dff", tonumber( v[2] ) ),tonumber( v[2] ) ) 
        engineReplaceCOL ( engineLoadCOL( v[1]..".col" ),tonumber( v[2] ) ) 
    end 
end 
setTimer( replace,1000,1 ) 

Link to comment
вся проблема только в текстуре и ее замене

Ну я понял а что вообще тот варнинг означает? Есть ли такой топик с варнингами и как их решить?

engineImportTXD ( engineLoadTXD ( v[1]..".txd" ),tonumber( v[2] ) ) 

-тут что какая-то синтаксическая или грамматическая(или как там она называется) ошибка?

Когда это был скрипт колёс, всё работало в 1.2 версии (Kenix подсказал мне это).

Link to comment

лучше переменную создать и поместить в нее то, что вернула первая функция. Затем проверить содержимое этой переменной и только потом подставлять во вторую функцию

Link to comment

Новую тему лень создавать

Изготовил модельку, текстура не загружается, всё остальное нормально.

Клиентский код разделил на стадии чтобы понять чё да как.

function LoadTex ( ) 
removeWorldModel(10983,1000,-2076.65,222.852,31.2188) -- model 
removeWorldModel(11143,1000,-2076.65,222.852,31.2188) -- lod 
txd = engineLoadTXD( "object/hubNewSFSE.txd" )  
outputChatBox ( "Загрузка текстуры", 255, 0, 0, true ) 
setTimer ( LoadObject, 1000, 1) 
end 
addEvent ( "replaceObj", true ) 
addEventHandler ( "replaceObj", getRootElement(), LoadTex ) 
  
function LoadObject ( ) 
col = engineLoadCOL( "object/hubNewSFSE.col" ) 
dff = engineLoadDFF( "object/hubNewSFSE.dff", 0 ) --modelid is everytime 0, when you replace no vehicle 
outputChatBox ( "Загрузка модели и коллизии", 0, 255, 0, true ) 
setTimer ( ReplaceTex, 5000, 1) 
end 
  
function ReplaceTex ( ) 
engineImportTXD( txd, 1575 ) 
engineReplaceCOL( col, 1575 ) 
engineReplaceModel( dff, 1575 )-- replace the model at least 
engineSetModelLODDistance(1575, 600) 
outputChatBox ( "Замена текстур", 0, 0, 255, true ) 
setTimer ( ReplaceObject, 2000, 1) 
end 
  
function ReplaceObject ( ) 
engineReplaceCOL( col, 1575 ) 
engineReplaceModel( dff, 1575 )-- replace the model at least 
engineSetModelLODDistance(1575, 600) 
outputChatBox ( "Замена модели и коллизии", 0, 255, 255, true ) 
setTimer ( Cre8Object, 2000, 1) 
end 
  
function Cre8Object ( ) 
createObject ( 1575, -2076.65, 222.852, 31.2188, 0, 0, 0 ) 
outputChatBox ( "Постановка объекта", 255, 19, 156, true ) 
end 

Вот серверный.

function ReplaceCommand ( ) 
triggerClientEvent( "replaceObj", getRootElement(), replaceObj ) 
end 
addCommandHandler( "replace", ReplaceCommand ) 

Весь рес тут. А еще один раз у меня текстурка на модельке появилась, когда я в мап эдиторе ставил. А сейчас что-то нет.

http://narod.ru/disk/41087263001/3d_test.zip.html

Моделька норм. И текстуры поменьше сделал чтоб резче грузилось.

Link to comment
  • 3 weeks later...

А шо не так? "Изготовил модельку" означает, что проблема может быть именно в модели и в том как текстуры наложены. Потому что, правильное отображение в каком-либо 3Д редакторе не говорит о том, что в ГТА это все будет работать также.

Link to comment
А шо не так? "Изготовил модельку" означает, что проблема может быть именно в модели и в том как текстуры наложены. Потому что, правильное отображение в каком-либо 3Д редакторе не говорит о том, что в ГТА это все будет работать также.

Работает это уж точно, в мта работало тоже, только через раз также как и с заменой колёс раньше. Я ее в лос сантосе ставил через мапед -было всё с текстурой, в сан фиерро поставил на то место под какое я подгонял(вместо одной половины стройки) и скриптом - текстуры перестали отображаться.

И в макс импортируется и в занозу и текстуры с моделью сопоставляются через TXD Workshop.

Link to comment

Вся проблема в модельке.

Тутор от Devix'a

Учитесь , это довольно просто.

Возможно:

Вы используете текстуру , которой не существует в txd.

Т.е в dff есть путь к текстуре , но этой текстуры нет в txd.

Желательно при создании модели все текстуры и т.д назвать по одинаковому.

Link to comment
А текстура в TXD как сжата?

С помощью TXD Worksop'a (не с помощью GTXD ато текстуры пиксельные будут) все DXT1 GTA SA, две версии были с норм текстурами и где 512х512 переделаны под 256. Я всё переделал завтра попробую.

Link to comment

И причём тут это всё? Я спросил как сжата текстура в TXD. Даже TXD Workshop имеет разные методы сжатия. Можно сохранить текстуру без сжатия, тогда могут быть проблемы даже в сингле, не то что в MTA.

Link to comment

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...