MqRaLGN7MGN4LWF6LWN5NqB9M7csynIkynwbzD1c

Masalah dengan variabel yang mereferensikan posisi X & Y layer tertentu di ScriptUI After Effect

BLANTERLANDINGv101
6239365398578382647

Masalah dengan variabel yang mereferensikan posisi X & Y layer tertentu di ScriptUI After Effect

2020-09-24

 jasaintrovideo.com - Saya mengerjakan serial TV animasi yang melibatkan karakter yang sering duduk di meja mereka. Untuk mempercepat pengaturan adegan, saya membuat tombol ScriptUI yang ketika diklik, melihat nama karakter untuk menentukan siapa, kemudian menerapkan nilai posisi, skala, dan titik jangkar yang sesuai menggunakan loop.

Masalah dengan variabel yang mereferensikan posisi X & Y layer tertentu di ScriptUI After Effect

Ini bekerja dengan baik ketika comp kami semua berukuran sama, tetapi baru-baru ini ukurannya berbeda-beda. Jadi saya telah memutuskan untuk mengambil titik referensi dari setiap komposisi, khususnya posisi meja karakter. Skrip sekarang melihat posisi lapisan bernama "Meja" dan menambahkan (atau mengurangi) ke nilai posisinya untuk mendapatkan koordinat X, Y yang diperlukan untuk penempatan yang benar.

Anda akan melihat contoh dari kedua pendekatan dalam kode di bawah ini (versi asli yang bekerja murni pada coord comp, dan pendekatan baru yang menggunakan referensi lapisan). Harap dicatat bahwa dalam contoh di bawah ini hanya ada dua karakter dalam kode. Saya telah menghapus semua karakter lain sehingga postingannya tidak terlalu panjang. 

Masalah yang saya hadapi adalah variabel meja saya yang mewah dan mewah tidak melakukan apa-apa! Namun, jika saya memberi komentar dan menggantinya dengan variabel dummy langsung di bawah, skrip berfungsi!

myPanel.grp.group20.desk.onClick = function() {

         

    app.beginUndoGroup("Auto Desk Blocking")


    // Layers

    var layer = app.project.activeItem.selectedLayers;

    

    // Array for all the settings

    var movSettings = [];


    // Desk variables

    var posH = app.project.activeItem.layer("Desk").transform.position[0];

    var posV = app.project.activeItem.layer("Desk").transform.position[1];

             

    // Desk dummy variables

    // var posH = 3285.5;

    // var posV = 2810.5;


    // Objects for all the settings

    

    // Original example for 4000x4000 compositions

    movSettings[0] = {

        name: ["AQU.mov","AQU_VERTICAL.mov","AQU_PORTRAIT.mov","AQU_LANDSCAPE.mov","AQU_Vertical.mov","AQU_Portrait.mov","AQU_Landscape.mov","AQU_vertical.mov","AQU_portrait.mov","AQU_landscape.mov"],

        anchorPoint: [2000,3600],

        position: [1267,2984],

        scale: [47,47]

        }


    // This example uses another layer as a reference point, allowing for comps of any size

     movSettings[1] = {

        name: ["ARI.mov","ARI_VERTICAL.mov","ARI_PORTRAIT.mov","ARI_LANDSCAPE.mov","ARI_Vertical.mov","ARI_Portrait.mov","ARI_Landscape.mov","ARI_vertical.mov","ARI_portrait.mov","ARI_landscape.mov"],

        anchorPoint: [2000,3410],

        position: [posH+390.5,posV+218.5],

        scale: [50,50]

        }


       // Go though all layers

    for(var i = 0; i < layer.length; i++){

        // Look for layer with name in layer name

        for(var j = 0; j < movSettings.length; j++){

            for(var k = 0; k < movSettings[j].name.length; k++){

                

                if(layer[i].name.indexOf(movSettings[j].name[k]) != -1){

                    // Change layer settings   

                    layer[i].property("Anchor Point").setValue(movSettings[j].anchorPoint);

                    layer[i].transform.position.setValue(movSettings[j].position);

                    layer[i].transform.scale.setValue(movSettings[j].scale);

                    break;

                    

                }

            }

        }

    }

    

    app.endUndoGroup();

}

Sebagai bukti konsep, saya membuatnya berfungsi sebagai ekspresi pada Posisi karakter jadi…

posH = thisComp.layer("Desk").transform.position[0]+390.5;

posV = thisComp.layer("Desk").transform.position[1]+218.5;

[posH, posV] 

Namun itu tidak bagus dalam penggunaan dunia nyata karena karakter tidak pernah bisa bergerak dari meja mereka. Betapa mengerikan! Saya membutuhkannya untuk berfungsi sebagai tombol ScriptUI sehingga itu hanya memberi stempel nilai pada tempatnya dan memungkinkan penyesuaian lebih lanjut setelah itu. 


oposisi x & y after effect after effects script ui scriptui panels of after effects scriptui after effect query scriptui after effect pdf scriptui after effect online scriptui after effect mac scriptui after effect lightroom scriptui after effect keyboard scriptui after effect javascript scriptui after effect html e pass x & y after effect scriptui after effect github scriptui after effect free scriptui after effect example scriptui after effect download scriptui after effect cc scriptui after effect background scriptui after effect android scriptui after effect zip scriptui after effect youtube scriptui after effect xml scriptui after effect windows 10 scriptui after effect video scriptui after effect ui scriptui after effect template

Detail Pemesanan

Masalah dengan variabel yang mereferensikan posisi X & Y layer tertentu di ScriptUI After Effect
Masalah dengan variabel yang mereferensikan posisi X & Y layer tertentu di ScriptUI After Effect
Jumlah:
Sub-Total :

TAGS
BLANTERLANDINGv101
Formulir Kontak Whatsapp×
Data Anda
Data Lainnya
Kirim Sekarang