Familiarize yourself with adding actions to buttons.
The command to position / resize / rotate objects is position (resize, rotate and opacity are aliases)
The parameters are;
- scene=<scene name> (case sensitive)
- group=<group name> (optional)
- item=<scene item> (case sensitive)
- delay=<time in ms> (optional)
- x=<new x position> (optional)
- y=<new y position> (optional)
- w=<new width> (optional)
- h=<new height> (optional)
- r=<rotation> (optional)
- cl=<crop left> (optional)
- cr=<crop right> (optional)
- ct=<crop top> (optional)
- cb=<crop bottom> (optional)
- alpha=<opacity: 0 - 100> (optional) (See below)
The scene and item parameters are case sensistive, so must be typed exactly as they appear in OBS.
The group parameter must be used if the scene item is in a group (available from OBS Studio v22).
The optional delay specifies a time (in milliseconds) to wait before running the command.
The four crop parameters (cl, cr, ct, cb) allow you to crop the scene item from the left, right, top and bottom.
Setting Opacity : If you are setting the opacity of any objects then you must create a special object called UP DECK. It can be any type of object - an image for example. It can also be created in any scene - as long as it exists somewhere in OBS - it can even be invisible. You then must add a Color Correction filter to this special object : rename the filter to UP DECK COLOR. After this special object and filter have been created, you can set the opacity of any object in any scene.
x and y position : the top left corner of the screen is 0,0. If you're broadcasting in 720p then the bottom right of the screen is 1279,719 (screen size of 1280x720).
If you only want to resize an object, you can supply the w and h parameters and omit the x, y and r parameters. (And use the resize alias to make things easier to understand). The same is true for positioning and rotating.