Skip to content

Commit efcf90b

Browse files
authored
Merge pull request #6 from korarei/refactor/beta16
Refactor: Use object existence check introduced in beta16
2 parents e94acc8 + 6913982 commit efcf90b

11 files changed

Lines changed: 91 additions & 130 deletions

File tree

.github/workflows/releaser.yml

Lines changed: 12 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -35,9 +35,9 @@ jobs:
3535
$folder = "./dll_src/aviutl2_sdk"
3636
Get-ChildItem -Path $folder -Filter "*.h" -Recurse | ForEach-Object {
3737
$file = $_.FullName
38-
$content = Get-Content $file -Raw -Encoding Shift_JIS
38+
$content = Get-Content $file -Raw -Encoding "shift_jis"
3939
$content = $content -replace "`r`n", "`n"
40-
Set-Content $file -Value $content -Encoding UTF8
40+
Set-Content $file -Value $content -Encoding utf8
4141
}
4242
4343
- name: Build
@@ -50,7 +50,7 @@ jobs:
5050
- name: Upload artifact
5151
uses: actions/upload-artifact@v4
5252
with:
53-
name: publish
53+
name: module
5454
path: ${{ github.workspace }}/dll_src/build/Release/*.mod2
5555

5656
releaser:
@@ -68,13 +68,12 @@ jobs:
6868
uses: actions/checkout@v4
6969
with:
7070
fetch-depth: 0
71-
submodules: "recursive"
7271

7372
- name: Download artifact
7473
uses: actions/download-artifact@v4
7574
with:
76-
name: publish
77-
path: ${{ github.workspace }}/build/publish
75+
name: module
76+
path: ${{ github.workspace }}/dll_src/build/Release
7877

7978
- name: Extract script name
8079
run: |
@@ -85,15 +84,18 @@ jobs:
8584
- name: Setup python
8685
uses: actions/setup-python@v5
8786
with:
88-
python-version: '3.11'
87+
python-version: '3.14'
8988

9089
- name: Build script
9190
run: |
92-
python tools/build.py --tag ${{ github.ref_name }}
91+
pip install git+https://github.com/korarei/AviUtl2_Astra.git@v0.3.0
92+
cd ${{ github.workspace }}/scripts
93+
astra build -v ${{ github.ref_name }}
94+
astra release
9395
9496
- name: Create release
9597
uses: softprops/action-gh-release@v2
9698
with:
9799
name: ${{ env.SCRIPT_NAME }}_${{ github.ref_name }}
98-
files: 'build/*.zip'
99-
body_path: build/release_note.txt
100+
files: 'scripts/release/*.zip'
101+
body_path: scripts/release/release_notes.txt

.gitignore

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
**/build/
21
.vscode/
3-
**/aviutl2_sdk/
4-
**/__pycache__/
2+
**/build/
3+
**/release/
4+
**/aviutl2_sdk/

.gitmodules

Lines changed: 0 additions & 3 deletions
This file was deleted.

README.md

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,10 +19,10 @@ AviUtl ExEdit2のカメラ操作感を変更するスクリプト群.
1919

2020
## 動作確認
2121

22-
- [AviUtl ExEdit2 beta15](https://spring-fragrance.mints.ne.jp/aviutl/)
22+
- [AviUtl ExEdit2 beta18b](https://spring-fragrance.mints.ne.jp/aviutl/)
2323

2424
> [!CAUTION]
25-
> beta15以降必須
25+
> beta16以降必須
2626
2727
## 導入・削除・更新
2828

@@ -32,9 +32,9 @@ AviUtl ExEdit2のカメラ操作感を変更するスクリプト群.
3232

3333
### 導入
3434

35-
1. 同梱の`*.cam2``*.mod2``%ProgramData%`内の`aviutl2/Script`フォルダまたはその子フォルダに入れる.
35+
1. 同梱の`*.cam2``*.mod2``%ProgramData%`内の`aviutl2\Script`フォルダまたはその子フォルダに入れる.
3636

37-
`beta4`以降では`aviutl2.exe`と同じ階層内の`data/Script`フォルダ内でも可.
37+
`beta4`以降では`aviutl2.exe`と同じ階層内の`data\Script`フォルダ内でも可.
3838

3939
### 削除
4040

@@ -304,6 +304,9 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
304304
THE SOFTWARE.
305305

306306
## Change Log
307+
- **v1.0.5**
308+
- オブジェクトの存在判定方法を変更.
309+
307310
- **v1.0.4**
308311
- `rotate`関数を複数値を返す関数に変更.
309312
- `Transform``Track`における`Use Relative Layer`チェックボックスを`Layer Reference`リストに変更 (破壊的)

dll_src/main.cpp

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -145,6 +145,14 @@ static SCRIPT_MODULE_TABLE script_module_table = {L"CameraTransform_K v" VERSION
145145
functions};
146146

147147
extern "C" SCRIPT_MODULE_TABLE *
148-
GetScriptModuleTable(void) {
148+
GetScriptModuleTable() {
149149
return &script_module_table;
150150
}
151+
152+
extern "C" bool
153+
InitializePlugin(DWORD v) {
154+
if (v < 2001600)
155+
return false;
156+
else
157+
return true;
158+
}

dll_src/main.def

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,3 @@
11
EXPORTS
2-
GetScriptModuleTable @1
2+
InitializePlugin
3+
GetScriptModuleTable
Lines changed: 19 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
@Transform
2-
--infomation:Transform${SCRIPT_NAME} ${VERSION} by ${AUTHOR}
2+
--information:Transform${SCRIPT_NAME} ${VERSION} by ${AUTHOR}
33
--label:${LABEL}
44
--track0:X,-100000,100000,0,0.01
55
--track1:Y,-100000,100000,0,0.01
@@ -13,11 +13,6 @@
1313
--select@s1:Layer Reference,Absolute=0,Relative=1
1414
--value@_0:PI,{}
1515

16-
if (obj.getinfo("version") < 2001500) then
17-
debug_print("AviUtl ExEdit2 beta15 or later is required.")
18-
return
19-
end
20-
2116
_0 = _0 or {}
2217
local x = tonumber(_0.x) or obj.track0
2318
local y = tonumber(_0.y) or obj.track1
@@ -31,6 +26,7 @@ local parent_layer = math.floor(tonumber(_0.parent_layer) or obj.track7)
3126
local layer_ref = tonumber(_0.layer_ref) or s1 s1 = nil
3227
_0 = nil
3328

29+
local gv = obj.getvalue
3430
local lib = obj.module("CameraTransform_K")
3531
local cam = obj.getoption("camera_param")
3632

@@ -52,15 +48,15 @@ if (layer <= 0 or layer == obj.layer) then
5248
if (type(_G["PARENT"]) == "table" and _G["PARENT"].type) then
5349
parent = _G["PARENT"]
5450
end
55-
elseif (obj.getvalue("layer" .. layer .. ".x")) then
51+
elseif (gv("layer" .. layer)) then
5652
parent.type = 1
57-
parent.x = obj.getvalue("layer" .. layer .. ".x")
58-
parent.y = obj.getvalue("layer" .. layer .. ".y")
59-
parent.z = obj.getvalue("layer" .. layer .. ".z")
60-
parent.rx = obj.getvalue("layer" .. layer .. ".rx")
61-
parent.ry = obj.getvalue("layer" .. layer .. ".ry")
62-
parent.rz = obj.getvalue("layer" .. layer .. ".rz")
63-
parent.scale = obj.getvalue("layer" .. layer .. ".zoom") * 0.01
53+
parent.x = gv("layer" .. layer .. ".x") or 0.0
54+
parent.y = gv("layer" .. layer .. ".y") or 0.0
55+
parent.z = gv("layer" .. layer .. ".z") or 0.0
56+
parent.rx = gv("layer" .. layer .. ".rx") or 0.0
57+
parent.ry = gv("layer" .. layer .. ".ry") or 0.0
58+
parent.rz = gv("layer" .. layer .. ".rz") or 0.0
59+
parent.scale = (gv("layer" .. layer .. ".zoom") or 100.0) * 0.01
6460
end
6561
_G["PARENT"] = nil
6662

@@ -102,7 +98,7 @@ obj.setoption("camera_param", cam)
10298

10399

104100
@Parent
105-
--infomation:Parent${SCRIPT_NAME} ${VERSION} by ${AUTHOR}
101+
--information:Parent${SCRIPT_NAME} ${VERSION} by ${AUTHOR}
106102
--label:${LABEL}
107103
--track0:X,-100000,100000,0,0.01
108104
--track1:Y,-100000,100000,0,0.01
@@ -115,11 +111,6 @@ obj.setoption("camera_param", cam)
115111
--track7:Zoom,0,10000,100,0.001
116112
--value@_0:PI,{}
117113

118-
if (obj.getinfo("version") < 2001500) then
119-
debug_print("AviUtl ExEdit2 beta15 or later is required.")
120-
return
121-
end
122-
123114
_0 = _0 or {}
124115
local x = tonumber(_0.x) or obj.track0
125116
local y = tonumber(_0.y) or obj.track1
@@ -135,11 +126,7 @@ _0 = nil
135126
local Vec = {}
136127
Vec.__index = Vec
137128
function Vec:new(x_, y_, z_)
138-
local self = setmetatable({}, self)
139-
self.x = x_
140-
self.y = y_
141-
self.z = z_
142-
return self
129+
return setmetatable({x = x_, y = y_, z = z_}, self)
143130
end
144131

145132
function Vec.__add(a, b)
@@ -191,35 +178,32 @@ end
191178

192179

193180
@Track
194-
--infomation:Track${SCRIPT_NAME} ${VERSION} by ${AUTHOR}
181+
--information:Track${SCRIPT_NAME} ${VERSION} by ${AUTHOR}
195182
--label:${LABEL}
196183
--track0:Target Layer,-100,100,1,1
197184
--select@s0:Layer Reference,Absolute=0,Relative=1
198185
--track1:Influence,0,100,100,0.01
199186
--value@_0:PI,{}
200187

201-
if (obj.getinfo("version") < 2001500) then
202-
debug_print("AviUtl ExEdit2 beta15 or later is required.")
203-
return
204-
end
205-
206188
_0 = _0 or {}
207189
local target_layer = math.floor(tonumber(_0.target_layer) or obj.track0)
208190
local layer_ref = tonumber(_0.layer_ref) or s0 s0 = nil
209191
local influence = (tonumber(_0.influence) or obj.track1) * 0.01
210192
_0 = nil
211193

194+
local gv = obj.getvalue
195+
212196
local function lerp(a, b, t)
213197
return a + (b - a) * t
214198
end
215199

216200
local cam = obj.getoption("camera_param")
217201
local tx, ty, tz = 0.0, 0.0, 0.0
218202
local layer = math.max(layer_ref == 1 and obj.layer + target_layer or target_layer, 1)
219-
if (layer ~= obj.layer and obj.getvalue("layer" .. layer .. ".x")) then
220-
tx = obj.getvalue("layer" .. layer .. ".x")
221-
ty = obj.getvalue("layer" .. layer .. ".y")
222-
tz = obj.getvalue("layer" .. layer .. ".z")
203+
if (layer ~= obj.layer and gv("layer" .. layer)) then
204+
tx = gv("layer" .. layer .. ".x")
205+
ty = gv("layer" .. layer .. ".y")
206+
tz = gv("layer" .. layer .. ".z")
223207
end
224208

225209
cam.tx = lerp(cam.tx, tx, influence)

scripts/astra.config.json

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
{
2+
"project": {
3+
"name": "@CameraTransform_K",
4+
"author": "Korarei"
5+
},
6+
"build": {
7+
"directory": "build",
8+
"scripts": [
9+
{
10+
"suffix": ".cam2",
11+
"source": {
12+
"variables": {
13+
"LABEL": "カメラ効果"
14+
}
15+
}
16+
}
17+
],
18+
"modules": [
19+
{
20+
"path": "../dll_src/build/Release/*.mod2"
21+
}
22+
]
23+
},
24+
"install": {
25+
"directory": "C:/ProgramData/aviutl2/Script"
26+
},
27+
"release": {
28+
"directory": "release",
29+
"archive": {
30+
"files": [
31+
"../README.md",
32+
"../LICENSE"
33+
]
34+
},
35+
"notes": {
36+
"source": "../README.md"
37+
}
38+
}
39+
}

tools/build.py

Lines changed: 0 additions & 65 deletions
This file was deleted.

tools/build_config.json

Lines changed: 0 additions & 7 deletions
This file was deleted.

0 commit comments

Comments
 (0)