Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для FilterScript
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.01.2016
    Сообщений
    3
    Репутация:
    0 ±

    SetDynamicMaterialObject - Help

    Недавно начал заниматься интерьерами и теперь ломаю голову.
    Подскажите как же правильно использовать это и почему?

    1) new tmpobjid;
    tmpobjid = CreateObject(19378,1765.169,-1211.674,1249.003,0.000,90.000,0.000,300.000);
    SetObjectMaterial(tmpobjid, 0, 14652, "ab_trukstpa", "mp_diner_wood", 0);

    2) new test;
    test = CreateObject(19378,1765.169,-1211.674,1249.003,0.000,90.000,0.000,300.000);
    SetObjectMaterial(test, 0, 14652, "ab_trukstpa", "mp_diner_wood", 0);

    3) SetObjectMaterial(CreateObject(19378,1765.169,-1211.674,1249.003,0.000,90.000,0.000,300.000),
    0, 14652, "ab_trukstpa", "mp_diner_wood", 0);


    4) new test[4];
    test[0] = CreateDynamicObject(19385, -2801.85, 375.52999, 7.07, 0, 0, 0, -1, -1, -1, 200, 200);
    test[1] = CreateDynamicObject(19447, -2801.85, 375.5199, 10.56, 0, 180, 0, -1, -1, -1, 200, 200);
    test[2] = CreateDynamicObject(19355, -2801.85, 378.739, 7.07, 0, 0, 0, -1, -1, -1, 200, 200);
    test[3] = CreateDynamicObject(19355, -2801.85, 372.32, 7.07, 0, 0, 0, -1, -1, -1, 200, 200);
    for(new i=0; i<4; i++)
    {
    SetDynamicObjectMaterial(test[i], 0, 12980, "sw_block10", "sw_woodslats2", 0xFFFFFFFF);
    }

    Между первым и вторым вариантом я разницы вообще не вижу, но почему то все чаще всего используют первый вариант, хз почему.
    Последний раз редактировалось FilterScript; 18.01.2016 в 04:12.

  2. #2
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    SetObjectMaterial - это функция замены текстуры статических объектов.
    SetDynamicObjectMaterial - это функция замены текстуры динамических объектов.

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

    - - - Добавлено - - -

    Вот может быть пригодится (SetObjectMaterial)
    Последний раз редактировалось vovandolg; 18.01.2016 в 04:26.

  3. #3
    Аватар для FilterScript
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.01.2016
    Сообщений
    3
    Репутация:
    0 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    SetDynamicObjectMaterial - это функция замены текстуры динамических объектов.
    Между первым и вторым вариантом нету не какой разницы, разве что названия переменных разные..
    В третьем варианте без объявления переменной вставляется объект, тоже рабочий вариант,
    но код становится длинным в строке, поэтому лучше вернутся к первому и второму варианту..
    Четвёртый вариант используется когда на большое кол-во объектов вешается одна и та же текстура.
    Я так и думал, посмотрим что на это скажут другие специалисты :)

  4. #4
    Аватар для FilterScript
    Пользователь

    Статус
    Оффлайн
    Регистрация
    18.01.2016
    Сообщений
    3
    Репутация:
    0 ±
    UP!

  5. #5
    Аватар для $continue$
    Пользователь

    Статус
    Оффлайн
    Регистрация
    02.08.2014
    Адрес
    г. Киров (aka Вятка)
    Сообщений
    1,487
    Репутация:
    276 ±
    Начнем с того, что CreateObject/СreateDynamicObject, возвращают ID созданного объекта.
    1,2) В переменной tmpobjid/test будет сохранен ID созданного объекта. Потом по этим переменнам будет произоводиться "замена текстур"
    3) Тут же Вы, вызываете CreateObject/CreateDynamicObject напрямую, то есть без переменной сразу же передаете функции SetObjectMaterial ID объекта.
    4) Вы заносите все ID в массив -> дальше "ретекстурите" с помощью цикла.

    P.S: Когда много ретекустур - я бы лично использовал массив. Ибо это более удобней, чем переменные.
    Value your freedom or you will lose it, teaches history. "Don't bother us with politics," respond those who don't want to learn. (c) Richard Stallman

 

 

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •