Skip to content

Commit 54236e0

Browse files
committed
v1.73-for-beta28a
Use of `obj.clearbuffer()` to change image size. Added English translation file.
1 parent ba6647b commit 54236e0

8 files changed

Lines changed: 748 additions & 93 deletions

File tree

.gitattributes

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,5 @@
1212
*.scn2 text eol=lf linguist-language=Lua working-tree-encoding=utf8
1313
*.cam2 text eol=lf linguist-language=Lua working-tree-encoding=utf8
1414
*.tra2 text eol=lf linguist-language=Lua working-tree-encoding=utf8
15+
*.aul2 text eol=lf linguist-language=ini working-tree-encoding=utf8
1516
*.lua text eol=lf linguist-language=Lua working-tree-encoding=utf8

.github/workflows/releaser.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ jobs:
3232
cp *.anm2 pack
3333
cp *.obj2 pack
3434
cp *.tra2 pack
35+
cp *.aul2 pack
3536
cp *.md pack
3637
cp LICENSE pack/LICENSE
3738
cd pack

@Basic_S.anm2

Lines changed: 40 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
--[[
22
MIT License
3-
Copyright (c) 2025 sigma-axis
3+
Copyright (c) 2025-2026 sigma-axis
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal
@@ -23,7 +23,7 @@ SOFTWARE.
2323
https://mit-license.org/
2424
]]
2525
@四隅丸め
26-
--information:四隅丸め@Basic_S v1.72 (for beta26) by σ軸
26+
--information:四隅丸め@Basic_S v1.73 (for beta28a) by σ軸
2727
--label:Basic_S\クリッピング
2828
--filter
2929
--track@radius:半径,0,2000,40,0.01
@@ -282,7 +282,7 @@ obj.pixelshader("carve", "object", nil, {
282282
}, "mask");
283283

284284
@背景角丸矩形
285-
--information:背景角丸矩形@Basic_S v1.72 (for beta26) by σ軸
285+
--information:背景角丸矩形@Basic_S v1.73 (for beta28a) by σ軸
286286
--label:Basic_S\装飾
287287
--track@pad_X:余白X,-1000,1000,10,1
288288
--track@pad_Y:余白Y,-1000,1000,10,1
@@ -507,7 +507,6 @@ else
507507
local function full_escape(s) return ("%q"):format(s):gsub("[\128-\255]", full_escape_repl) end
508508
local pi_head = ("radii=require'string.buffer'.decode%s,shapes=require'string.buffer'.decode%s,line="):format(
509509
full_escape(buffer.encode(PI.radii)), full_escape(buffer.encode(PI.shapes)));
510-
obj.setoption("drawtarget", "tempbuffer", W, H);
511510

512511
-- try to loading the images if specified.
513512
if has_image or has_image_back then
@@ -540,15 +539,15 @@ else
540539
end
541540

542541
-- render the background first.
543-
obj.copybuffer("object", "tempbuffer");
542+
obj.clearbuffer("object", W, H);
544543
if do_fill or clip > 0 or alpha_back > 0 then
545544
obj.clearbuffer("object", color);
546545
obj.effect("四隅丸め@Basic_S", "半径", radius,
547546
"半径均一", uniform and 1 or 0, "右上半径", r_RT, "右下半径", r_RB, "左下半径", r_LB,
548547
"縦横比", aspect, "縦横比固定", fixed_aspect, "形状", shape_name, "PI",
549548
pi_head..math.max(W, H, 4000));
550-
obj.copybuffer("tempbuffer", "object");
551549
end
550+
obj.copybuffer("tempbuffer", "object");
552551

553552
-- next the chrome part.
554553
if not do_fill then
@@ -587,7 +586,7 @@ end
587586
obj.cx, obj.cy = obj.cx + (L - R) / 2, obj.cy + (T - B) / 2;
588587

589588
@背景楕円
590-
--information:背景楕円@Basic_S v1.72 (for beta26) by σ軸
589+
--information:背景楕円@Basic_S v1.73 (for beta28a) by σ軸
591590
--label:Basic_S\装飾
592591
--track@pad_X:余白X,-1000,1000,10,1
593592
--track@pad_Y:余白Y,-1000,1000,10,1
@@ -701,7 +700,7 @@ obj.effect("背景角丸矩形@Basic_S", "クリッピング", clip,
701700
pad_L, pad_R, pad_T, pad_B, line_x, line_y, back_x, back_y));
702701

703702
@背景菱形
704-
--information:背景菱形@Basic_S v1.72 (for beta26) by σ軸
703+
--information:背景菱形@Basic_S v1.73 (for beta28a) by σ軸
705704
--label:Basic_S\装飾
706705
--track@pad_X:余白X,-1000,1000,10,1
707706
--track@pad_Y:余白Y,-1000,1000,10,1
@@ -818,7 +817,7 @@ obj.effect("背景角丸矩形@Basic_S", "クリッピング", clip,
818817
pad_L, pad_R, pad_T, pad_B, line_x, line_y, back_x, back_y));
819818

820819
@透明度適用
821-
--information:透明度適用@Basic_S v1.72 (for beta26) by σ軸
820+
--information:透明度適用@Basic_S v1.73 (for beta28a) by σ軸
822821
--label:Basic_S\加工
823822
--filter
824823
--track@alpha:透明度,-100,100,0,0.01
@@ -838,7 +837,7 @@ if apply_former then obj.alpha, alpha = 1, alpha * obj.alpha end
838837
if alpha ~= 1 then obj.pixelshader("const_alpha", "object", nil, { alpha }, "mask") end
839838

840839
@透明度二値化
841-
--information:透明度二値化@Basic_S v1.72 (for beta26) by σ軸
840+
--information:透明度二値化@Basic_S v1.73 (for beta28a) by σ軸
842841
--label:Basic_S\加工
843842
--filter
844843
--track@alpha:基準透明度,0,100,50,0.01
@@ -880,7 +879,7 @@ if alpha > 0 or buffer < 1 then
880879
end
881880

882881
@色調補正
883-
--information:色調補正@Basic_S v1.72 (for beta26) by σ軸
882+
--information:色調補正@Basic_S v1.73 (for beta28a) by σ軸
884883
--label:Basic_S\色調整
885884
--filter
886885
--track@add_light:明るさ,0,200,100,0.01
@@ -1171,7 +1170,7 @@ else
11711170
end
11721171

11731172
@回転中心
1174-
--information:回転中心@Basic_S v1.72 (for beta26) by σ軸
1173+
--information:回転中心@Basic_S v1.73 (for beta28a) by σ軸
11751174
--label:Basic_S\配置
11761175
--track@X:X,-4000,4000,0,0.01
11771176
--track@Y:Y,-4000,4000,0,0.01
@@ -1181,7 +1180,7 @@ obj.cy = obj.cy + Y;
11811180
obj.cz = obj.cz + Z;
11821181

11831182
@回転中心アンカー指定
1184-
--information:回転中心アンカー指定@Basic_S v1.72 (for beta26) by σ軸
1183+
--information:回転中心アンカー指定@Basic_S v1.73 (for beta28a) by σ軸
11851184
--label:Basic_S\配置
11861185
--track0:X,-4000,4000,0,0.01
11871186
--track1:Y,-4000,4000,0,0.01
@@ -1230,7 +1229,7 @@ obj.ox, obj.oy, obj.oz = obj.ox + dx, obj.oy + dy, obj.oz + dz;
12301229
obj.cx,obj.cy,obj.cz = cx, cy, cz;
12311230

12321231
@上下左右揃え
1233-
--information:上下左右揃え@Basic_S v1.72 (for beta26) by σ軸
1232+
--information:上下左右揃え@Basic_S v1.73 (for beta28a) by σ軸
12341233
--label:Basic_S\配置
12351234
--track@X:左右%,-100,100,0,0.001
12361235
--track@Y:上下%,-100,100,0,0.001
@@ -1253,7 +1252,7 @@ if cx ~= obj.cx or cy ~= obj.cy then
12531252
end
12541253

12551254
@直角回転
1256-
--information:直角回転@Basic_S v1.72 (for beta26) by σ軸
1255+
--information:直角回転@Basic_S v1.73 (for beta28a) by σ軸
12571256
--label:Basic_S\配置
12581257
--select@rot:方向=0,なし=0,90°時計回り=1,180°反転=2,90°反時計回り=3,左右反転=4,上下反転=5,右上軸反転=6,左上軸反転=7
12591258
--check@move_center:中心の位置を変更,false
@@ -1300,7 +1299,7 @@ obj.copybuffer("object", "tempbuffer");
13001299
if not move_center then obj.cx, obj.cy = obj.cx + (cx - cx0), obj.cy + (cy - cy0) end
13011300

13021301
@XYZ追加回転
1303-
--information:XYZ追加回転@Basic_S v1.72 (for beta26) by σ軸
1302+
--information:XYZ追加回転@Basic_S v1.73 (for beta28a) by σ軸
13041303
--label:Basic_S\配置
13051304
--track@X:X,-720,720,0,0.01
13061305
--track@Y:Y,-720,720,0,0.01
@@ -1369,7 +1368,7 @@ if angle ~= 0 or draw then
13691368
end
13701369

13711370
@任意軸追加回転
1372-
--information:任意軸追加回転@Basic_S v1.72 (for beta26) by σ軸
1371+
--information:任意軸追加回転@Basic_S v1.73 (for beta28a) by σ軸
13731372
--label:Basic_S\配置
13741373
--track@angle:角度,-720,720,0,0.01
13751374
--track0:回転軸X,-512,512,0,0.001
@@ -1617,7 +1616,7 @@ else
16171616
end
16181617

16191618
@傾斜
1620-
--information:傾斜@Basic_S v1.72 (for beta26) by σ軸
1619+
--information:傾斜@Basic_S v1.73 (for beta28a) by σ軸
16211620
--label:Basic_S\変形
16221621
--track@angle:角度,-80,80,0,0.001
16231622
--track@slope:傾き%,-500,500,0,0.001
@@ -1696,7 +1695,7 @@ obj.copybuffer("object", "tempbuffer");
16961695
obj.cx, obj.cy = obj.cx - cx, obj.cy - cy;
16971696

16981697
@XY軸変形
1699-
--information:XY軸変形@Basic_S v1.72 (for beta26) by σ軸
1698+
--information:XY軸変形@Basic_S v1.73 (for beta28a) by σ軸
17001699
--label:Basic_S\変形
17011700
--value@axis_X:X軸,{100,0}
17021701
--check@stretch_X:X長さ変更,false
@@ -1752,7 +1751,7 @@ obj.drawpoly(
17521751
obj.copybuffer("object", "tempbuffer");
17531752

17541753
@領域サイズ変更
1755-
--information:領域サイズ変更@Basic_S v1.72 (for beta26) by σ軸
1754+
--information:領域サイズ変更@Basic_S v1.73 (for beta28a) by σ軸
17561755
--label:Basic_S\クリッピング
17571756
--track@T:上,-4000,4000,0,1
17581757
--track@B:下,-4000,4000,0,1
@@ -1840,7 +1839,7 @@ end
18401839
obj.cx, obj.cy = cx, cy;
18411840

18421841
@領域割合サイズ変更
1843-
--information:領域割合サイズ変更@Basic_S v1.72 (for beta26) by σ軸
1842+
--information:領域割合サイズ変更@Basic_S v1.73 (for beta28a) by σ軸
18441843
--label:Basic_S\クリッピング
18451844
--track@T:上%,-100,100,0,0.001
18461845
--track@B:下%,-100,100,0,0.001
@@ -1895,7 +1894,7 @@ if L ~= 0 or R ~= 0 or T ~= 0 or B ~= 0 then
18951894
end
18961895

18971896
@領域サイズ指定
1898-
--information:領域サイズ指定@Basic_S v1.72 (for beta26) by σ軸
1897+
--information:領域サイズ指定@Basic_S v1.73 (for beta28a) by σ軸
18991898
--label:Basic_S\クリッピング
19001899
--track0:X,-4000,4000,0,0.1
19011900
--track1:Y,-4000,4000,0,0.1
@@ -1992,7 +1991,7 @@ elseif L ~= 0 or R ~= 0 or T ~= 0 or B ~= 0 then
19921991
end
19931992

19941993
@カットずらし
1995-
--information:カットずらし@Basic_S v1.72 (for beta26) by σ軸
1994+
--information:カットずらし@Basic_S v1.73 (for beta28a) by σ軸
19961995
--label:Basic_S\クリッピング
19971996
--track0:ずれX,-4000,4000,40,1
19981997
--track1:ずれY,-4000,4000,0,1
@@ -2190,7 +2189,7 @@ L, R, T, B =
21902189
math.ceil(B + obj.h / 2) - obj.h / 2;
21912190

21922191
-- draw by shader.
2193-
obj.setoption("drawtarget", "tempbuffer", R - L, B - T);
2192+
obj.clearbuffer("tempbuffer", R - L, B - T);
21942193
obj.pixelshader("place", "tempbuffer", "object", {
21952194
obj.w, obj.h; -L - obj.w / 2, -T - obj.h / 2 ; dy, -dx; X, Y;
21962195
c - (L * dy - T * dx); crop; gap; mode;
@@ -2203,7 +2202,7 @@ if not move_center then
22032202
end
22042203

22052204
@中抜きクリッピング
2206-
--information:中抜きクリッピング@Basic_S v1.72 (for beta26) by σ軸
2205+
--information:中抜きクリッピング@Basic_S v1.73 (for beta28a) by σ軸
22072206
--label:Basic_S\クリッピング
22082207
--track0:X,-4000,4000,0,0.1
22092208
--track1:Y,-4000,4000,0,0.1
@@ -2306,7 +2305,7 @@ else
23062305
end
23072306

23082307
@小数ぼかし
2309-
--information:小数ぼかし@Basic_S v1.72 (for beta26) by σ軸
2308+
--information:小数ぼかし@Basic_S v1.73 (for beta28a) by σ軸
23102309
--label:Basic_S\ぼかし
23112310
--filter
23122311
--track@range:範囲,0,1000,5,0.01
@@ -2429,13 +2428,13 @@ end
24292428

24302429
-- apply the blur by shaders.
24312430
local w, h = obj.w, obj.h;
2432-
obj.setoption("drawtarget", "tempbuffer", h, w + span_x_i);
2431+
obj.clearbuffer("tempbuffer", h, w + span_x_i);
24332432
obj.pixelshader("convol", "tempbuffer", "object", { w, span_x_i, span_x_f, 1 / span_x });
2434-
obj.effect("領域拡張", "右", span_x_i, "下", span_y_i);
2433+
obj.clearbuffer("object", w + span_x_i, h + span_y_i);
24352434
obj.pixelshader("convol", "object", "tempbuffer", { h, span_y_i, span_y_f, 1 / span_y });
2436-
obj.setoption("drawtarget", "tempbuffer", h + span_y_i, w + 2 * span_x_i);
2435+
obj.clearbuffer("tempbuffer", h + span_y_i, w + 2 * span_x_i);
24372436
obj.pixelshader("convol", "tempbuffer", "object", { w + span_x_i, span_x_i, span_x_f, 1 / span_x });
2438-
obj.effect("領域拡張", "右", span_x_i, "下", span_y_i);
2437+
obj.clearbuffer("object", w + 2 * span_x_i, h + 2 * span_y_i);
24392438
obj.pixelshader("convol", "object", "tempbuffer", { h + span_y_i, span_y_i, span_y_f, 1 / span_y });
24402439

24412440
-- normalize the sum on the edges.
@@ -2453,7 +2452,7 @@ if luma_weight > 0 then
24532452
end
24542453

24552454
@縁取りα
2456-
--information:縁取りα@Basic_S v1.72 (for beta26) by σ軸
2455+
--information:縁取りα@Basic_S v1.73 (for beta28a) by σ軸
24572456
--label:Basic_S\装飾
24582457
--track@size:サイズ,-500,500,5,1
24592458
--track@blur:ぼかし,0,100,5,1
@@ -2632,7 +2631,7 @@ elseif alpha_front > 0 then
26322631
end
26332632

26342633
@四角縁取り
2635-
--information:四角縁取り@Basic_S v1.72 (for beta26) by σ軸
2634+
--information:四角縁取り@Basic_S v1.73 (for beta28a) by σ軸
26362635
--label:Basic_S\装飾
26372636
--track@size:サイズ,-500,500,5,0.01
26382637
--track@aspect:縦横比,-100,100,0,0.001
@@ -2825,7 +2824,7 @@ if size == 0 or alpha == 0 then
28252824
end
28262825

28272826
-- prepare border.
2828-
obj.setoption("drawtarget", "tempbuffer", W, H);
2827+
obj.clearbuffer("tempbuffer", W, H);
28292828
obj.computeshader("convol_h", "tempbuffer", "object", {
28302829
size_x_i, size_x_f,
28312830
size > 0 and 2 * (size_x_i + 1) or (size_x_i + 1)
@@ -2876,7 +2875,7 @@ else
28762875
end
28772876

28782877
@内側シャドウ
2879-
--information:内側シャドウ@Basic_S v1.72 (for beta26) by σ軸
2878+
--information:内側シャドウ@Basic_S v1.73 (for beta28a) by σ軸
28802879
--label:Basic_S\装飾
28812880
--filter
28822881
--track@X:X,-1000,1000,-40,0.01
@@ -3031,7 +3030,7 @@ obj.copybuffer("object", "tempbuffer");
30313030
obj.pixelshader("identity", "object", cache_name, nil, "mask");
30323031

30333032
@画像ファイル合成
3034-
--information:画像ファイル合成 v1.72 (for beta26) by σ軸
3033+
--information:画像ファイル合成@Basic_S v1.73 (for beta28a) by σ軸
30353034
--label:Basic_S\加工
30363035
--filter
30373036
--file@file:画像ファイル
@@ -3230,7 +3229,7 @@ if W > 0 and H > 0 then
32303229

32313230
-- process rotate / zoom / tile.
32323231
if alpha > 0 then
3233-
obj.setoption("drawtarget", "tempbuffer", R - L, B - T);
3232+
obj.clearbuffer("tempbuffer", R - L, B - T);
32343233
obj.pixelshader("tile", "tempbuffer", "object", {
32353234
W, H;
32363235
(c * (L - X) + s * (T - Y)) / zoom + W / 2,
@@ -3259,6 +3258,7 @@ if W > 0 and H > 0 then
32593258
obj.copybuffer("object", cache_name);
32603259
obj.pixelshader("mask_by_luma", "object", "tempbuffer", { alpha }, "mask");
32613260
elseif alpha > 0 then
3261+
obj.setoption("drawtarget", "tempbuffer");
32623262
if mode_draw == 0 then
32633263
-- combine from front.
32643264
if L < -w / 2 or R > w / 2 or T < -h / 2 or B > h / 2 then
@@ -3303,7 +3303,7 @@ obj.ox, obj.oy, obj.oz, obj.cx, obj.cy, obj.cz, obj.rx, obj.ry, obj.rz, obj.sx,
33033303
obj.cx, obj.cy = obj.cx + dcx, obj.cy + dcy;
33043304

33053305
@動画ファイル合成
3306-
--information:動画ファイル合成 v1.72 (for beta26) by σ軸
3306+
--information:動画ファイル合成@Basic_S v1.73 (for beta28a) by σ軸
33073307
--label:Basic_S\加工
33083308
--filter
33093309
--file@file:動画ファイル
@@ -3520,7 +3520,7 @@ if video_len > 0 and W > 0 and H > 0 then
35203520

35213521
-- process rotate / zoom / tile.
35223522
if alpha > 0 then
3523-
obj.setoption("drawtarget", "tempbuffer", R - L, B - T);
3523+
obj.clearbuffer("tempbuffer", R - L, B - T);
35243524
obj.pixelshader("tile", "tempbuffer", "object", {
35253525
W, H;
35263526
(c * (L - X) + s * (T - Y)) / zoom + W / 2,
@@ -3549,6 +3549,7 @@ if video_len > 0 and W > 0 and H > 0 then
35493549
obj.copybuffer("object", cache_name);
35503550
obj.pixelshader("mask_by_luma", "object", "tempbuffer", { alpha }, "mask");
35513551
elseif alpha > 0 then
3552+
obj.setoption("drawtarget", "tempbuffer");
35523553
if mode_draw == 0 then
35533554
-- combine from front.
35543555
if L < -w / 2 or R > w / 2 or T < -h / 2 or B > h / 2 then
@@ -3593,7 +3594,7 @@ obj.ox, obj.oy, obj.oz, obj.cx, obj.cy, obj.cz, obj.rx, obj.ry, obj.rz, obj.sx,
35933594
obj.cx, obj.cy = obj.cx + dcx, obj.cy + dcy;
35943595

35953596
@別レイヤー同期
3596-
--information:別レイヤー同期 v1.72 (for beta26) by σ軸
3597+
--information:別レイヤー同期@Basic_S v1.73 (for beta28a) by σ軸
35973598
--label:Basic_S\配置
35983599
--select@index_base:レイヤー位置=1,絶対指定=0,相対指定=1
35993600
--value@index:番号,-1

0 commit comments

Comments
 (0)