1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

Particle и многокадровая текстура

Тема в разделе "Материалы, текстуры", создана пользователем jonconnor, 21 авг 2015.

Модераторы: Артер
  1. jonconnor

    jonconnor Пользователь сайта

    С нами с:
    20.09.2014
    Сообщения:
    14
    Симпатии:
    0
    Баллы:
    2
    Как создать анимированный материал для частиц из такой многокадровой текстуры? Нужно чтобы в каждом следующем фрейме, отображался следующий рисунок текстуры.
     

    Вложения:

  2. igorznag

    igorznag Знаток

    С нами с:
    23.04.2010
    Сообщения:
    1.256
    Симпатии:
    173
    Баллы:
    65
    Пример. В новой сцене запускаем скрипт. Открывается новое окно.
    Нажимаем кнопку Select Image и выбираем файл многокадровой текстуры.
    Код:
    try destroydialog test catch()
    rollout test "test"
    (
        spinner spn_count "Count:" range:[1,10000,4] type:#integer
        button btn_select_image "Select Image"
        on btn_select_image pressed do
        (
            f = getOpenFileName caption:"Select Image" types:"PNG (*.png)|*.png|All|*.*|"
            if f!=undefined then
            (
                bm=openBitMap f
                if bm!=undefined then
                (
                    n=spn_count.value
                    bmt=bitmaptexture bitmap:bm
                    bmt.apply =true; bmt.cropPlace=0;
                    bmt.clipw=1.0/n; bmt.cliph=1.0/n
                    bmt.clipu.controller=Bezier_Float()
                    bmt.clipv.controller=Bezier_Float()
                  
                    for i=1 to n do
                    (
                        for j=1 to n do
                        (
                            c=bmt.clipu.controller
                            k=addnewkey c ((j-1)*n+i)
                            k.inTangentType=#step;k.outTangentType=#step;
                            k.value=1.0*(i-1)/n
                          
                            c=bmt.clipv.controller
                            k=addnewkey c ((j-1)*n+i)
                            k.inTangentType=#step;k.outTangentType=#step;
                            k.value=1.0*(j-1)/n
                        )--for j=1 to spn_count.value do
                    )--for i=1 to spn_count.value do
                  
                    sm=standardmaterial(); sm.diffuseMap=bmt; sm.showInViewport=true
                    p=plane(); p.width=bm.width; p.length=bm.height;
                    p.pos=[0,0,0];p.material=sm
                    select p; max zoomext sel; completeredraw()
                )--if bm!=undefined then
            )--if f!=undefined then
        )--on btn_select_image pressed do
    ); createdialog test 100 55
    Чтобы запустить скрипт нужно:
    1. Создаем текстовый файл (NotePad) и копируем код (текст) скрипта.
    2. Сохраняем текстовый файл с названием "test.ms"
    3. В главное меню MaxScript выбираем пункт Run Script. Выбираем файл "test.ms"
     
  3. maiden666

    maiden666 Знаток

    С нами с:
    06.04.2010
    Сообщения:
    3.094
    Симпатии:
    87
    Баллы:
    74
    а как же .ifl формат?
     
Модераторы: Артер

Поделиться этой страницей