เมนูเพิ่มเติม
เข้าชม: 2268|ตอบกลับ: 4

[Adminstrator]


เหงาจุง

อาสึนะ คิริโตะ HBD Tz Azusa Yui Mikasa Ackerman Hatsune Miku Tokisaki Kurumi 2Y Yatogami Tohka Itsuka Shido Tobiichi Origami Itsuka Kotori Yoshino Tokisaki Kurumi Kuriyama Mirai Yaya Mio Yukina Tsumugi HBD Miku 7Y Halloween 2014 Sinon  Christmas ! 2014 Happy new year 2015 Saitama Inori วันแม่ 2559

  • โมเอะ: 47527
  • Money: 5462135
  • Tz: 51244
  • Posts: 5429
  • Donate: 970 THB
  • Joined: 11-11-2011
พลังน้ำใจ: 196484
   Pet:
Rem V.1
หัวฟ้านางเอก

โพสต์เมื่อ 10-12-2011 22:17:33 |แสดงโพสต์ทั้งหมด
มาต่อกันที่เอฟเฟคของai-chan นะครับ
ดูง่ายๆแต่มีประสิทธิภาพก่อนที่จะไปเอฟเฟคของapih

เอฟเฟคของai-chan นั้นมีหลากหลายแถมยังอัพเดตเรื่อยๆ
ถือเป็นซับขั้นสูงที่เขียนภาษาLua ใน template code

สิ่งที่เพิ่มมาในการใช้งานด้วยนั้นคือ actor
ในการกำหนดเฉพาะบรรทัดนั้นๆให้เกิดเอฟเฟคเฉพาะ Actor นั้น โดยเขียนลงในcode line
ดังนั้นคุณสามารถเปลี่ยนชื่อ actor ได้ที่ส่วนของcode โดยหาพวก actor= = "mainkara";
เปลี่ยน mainkaraเป็นชื่อ actor อื่นๆได้


ข้อดี  คือเราสามารถเอามาใส่รวมกันโดยเปลี่ยนแค่ชื่อ actor ในบรรทัดที่ต้องการเท่านั้น
ก็จะเกิดเอฟเฟคนั้นๆเฉพาะบรรทัดactorเดียวกันเท่านั้น


สามารถโหลดไฟล์assไปดูการใช้งานได้ที่http://malakith.net/aegisub/index.php?topic=1222
จริงๆลังเลใจอยู่ว่าจะลงดีมั้ยเพราะว่ามันมีให้โหลดอยู่แล้วเป็นไฟล์Assเห็นภาพด้วย
ก๊อปจากตรงนั้นก็ดีกว่าอีกอย่างลงแล้วจะอธิบายยังไงดี เพราะคงไม่อธิบายหมดทุกตัว

ฉะนั้น สรุปจึงตัดสินใจว่าผมจะลงโค้ดถ้าใครอยากให้อธิบายส่วนไหนก็
เขียนถามมาได้ครับแล้วผมจะมาตอบคำถามอีกทีเพราะเรื่องkaraskelยังเขียนไม่เสร็จไม่ได้เอามาลง
แล้วในเอฟเฟคพวกนี้ก็มีภาษาluaอยู่ด้วย คนที่อยากสร้างเอฟเฟคเองคงงง


แต่โดยหลักๆไม่มีอะไรยาก:lol
ถ้าเห็นว่าน่าจะเพิ่มรูปหรืออะไรตรงไหนในบทความ บอกกล่าวกันได้นะครับ

-------------------------------------------------------------------------------------



1  spinblob




code once  :  rotratio=3;shape="{\\p2}m 23 0 l 15 12 l 0 16 l 1027 l 9 42 l 23 36 l 37 42 l 36 27 l 46 16 l 31 12{\\p0}"
code line  :  curpos, currot, curdur = -25, 0, 250


code syl noblank : lastpos, lastrot, lastdur = curpos, currot,curdur; curpos, currot, durstart, curdur =math.floor(syl.center+0.5), math.floor(lastdur / rotratio) *(math.random(0,3) == 0 and 1 or -1) + lastrot, (lastdur > 1000 andlastdur - 500 or 0), 0
code syl  :  curdur = curdur +syl.duration; fxgroup.main = orgline.actor == "mainkara";fxgroup.mainend = (fxgroup.main and syl.i == orgline.kara.n and syl.i> 0)


template syl fxgroup main noblank notext  : !retime("presyl",-lastdur,0)!{\an5\move(!lastpos+$lleft!,!$middle!,!$center!,!$middle!,!durstart!,!lastdur!)\frz!lastrot!\t(0,!lastdur!,\frz!currot!)\shad0}!shape!
templatesyl fxgroup mainend notext  : !retime("syl",0,250)!{\an5\move(!$scenter!,!$middle!,!$lright+25!,!$middle!)\frz!currot!\t(0,!$sdur+250!,\frz!currot+$skdur!)\fad(0,250)\shad0}!shape!


templatepre-line fxgroup main keeptags : ปล่อยให้ว่างเปล่า

-คาราโอเกะตั้งชื่อactor ว่า mainkara

--------------------------------------------------------------


2 Sliding \kf




code once  :  function append_tclip(tags,t1,t2,x1,y1,x2,y2) if t1== 0 and t2 == 0 then return tags ..string.format("\\clip(%d,%d,%d,%d)",x1,y1,x2,y2) else return tags ..string.format("\\t(%d,%d,\\clip(%d,%d,%d,%d))",t1,t2,x1,y1,x2,y2) end end
code line  : fxgroup.slidekf = (line.actor == "mainkara");tags = append_tclip("",0,0,line.left,line.top,line.left,line.bottom);laststart = 0


code syl  : fxgroup.slidekf_lastsyl = (fxgroup.slidekf and (syl.i== #line.kara))
code syl noblank  :  thisstart = (syl.start_time == 0 and 50 orsyl.start_time); tags =append_tclip(tags,laststart,thisstart,math.floor(line.left+syl.left+0.5),line.top,math.floor(line.left+syl.right+0.5),line.bottom);laststart = thisstart
code syl  : if fxgroup.slidekf_lastsyl then cright =math.floor(line.left+syl.right+0.5); tags =append_tclip(tags,laststart,syl.end_time,cright,line.top,cright,line.bottom) end


template syl fxgroup slidekf_lastsyl notext  : !retime("line",0,0)!{\fad(100,250)\u1!tags!}!line.text_stripped!
template pre-line fxgroup slidekf  : {\fad(100,250)\k!$kdur!}{\k0}


-คาราโอเกะตั้งชื่อactor ว่า mainkara

-------------------------------------------------------


3 Ephemeral \kf




code once  : rollstartratio = 0.5; rollstartmin = 100
code once  : function append_tclip(tags,t1,t2,x1,y1,x2,y2) if t1 == 0 and t2 == 0then return tags .. string.format("\\clip(%d,%d,%d,%d)",x1,y1,x2,y2)else return tags ..string.format("\\t(%d,%d,\\clip(%d,%d,%d,%d))",t1,t2,x1,y1,x2,y2) end end

code line  : fxgroup.ephk = (line.actor == "mainkara"); tags =append_tclip("",0,0,line.left,line.top,line.left,line.bottom);laststart = 0; lastleft = 0; lastright = 0

codesyl  : fxgroup.ephk_lastsyl = (fxgroup.ephk and (syl.i == #line.kara))
code syl noblank  : thisleft = math.floor(line.left+syl.left+0.5); thisright =math.floor(line.left+syl.right+0.5); thisstart = syl.start_time; iflaststart == 0 then if thisstart == 0 then thisstart = (rollstartmin< syl.end_time and rollstartmin or syl.end_time) end; tags =append_tclip(tags,0,thisstart,line.left,line.top,thisright,line.bottom)else dstart = thisstart - laststart; dnewstart =math.floor(dstart*rollstartratio); if dnewstart >= rollstartminthen dright = thisright - lastright; newstart = laststart +dnewstart; newright = lastright +math.floor(dright*rollstartratio+0.5); tags =append_tclip(tags,laststart,newstart,thisleft,line.top,newright,line.bottom);laststart = newstart end; tags =append_tclip(tags,laststart,thisstart,thisleft,line.top,thisright,line.bottom)end; laststart = thisstart; lastleft = thisleft; lastright =thisright


code syl  : if fxgroup.ephk_lastsyl then cright =math.floor(line.left+syl.right+0.5); tags =append_tclip(tags,laststart,syl.end_time,cright,line.top,cright,line.bottom) end


template syl fxgroup ephk_lastsyl notext  : !retime("line",0,0)!{\fad(100,250)\u1!tags!}!line.text_stripped!
template pre-line fxgroup ephk  : {\fad(100,250)\k!$kdur!}{\k0}

-คาราโอเกะตั้งชื่อactor ว่าmainkara



เอฟเฟคทั้ง2เหมือนกัน ต่างกันอยู่นิดหนึ่ง
เรามาดูภาพให้ดีๆจะเห็นว่าข้างล่างตัว
Ephemeral \kf เส้นสไลด์ออกแนวยืดหยุ่นสั้นยาวเล็กน้อย
Sliding \kf

Ephemeral \kf



----------------------------------------------------------------------------------

4 X-ray





code once  : xrayborder = 4
code once  : function append_tclip(tags,t1,t2,x1,y1,x2,y2) if t1 == 0 and t2 == 0then return tags .. string.format("\\clip(%d,%d,%d,%d)",x1,y1,x2,y2)else return tags ..string.format("\\t(%d,%d,\\clip(%d,%d,%d,%d))",t1,t2,x1,y1,x2,y2) end end


code line  :  fxgroup.xray= (line.actor == "mainkara"); line_left =line.left-xrayborder; line_right = line.right+xrayborder/2; tags =append_tclip("",0,0,line_left,line.top,line_left,line.bottom);ltags =append_tclip("",0,0,line_left,line.top,line_left,line.bottom);rtags =append_tclip("",0,0,line_left,line.top,line_right,line.bottom);laststart = 0


code syl  : fxgroup.xray_lastsyl = (fxgroup.xray and (syl.i == #line.kara))
code syl noblank  : if fxgroup.xray then thisstart = (syl.start_time == 0 and 50 orsyl.start_time); thisleft = math.floor(line.left+syl.left+0.5);thisright = math.floor(line.left+syl.right+0.5); tags =append_tclip(tags,laststart,thisstart,thisleft,line.top,thisright,line.bottom);ltags =append_tclip(ltags,laststart,thisstart,line_left,line.top,thisleft,line.bottom);rtags =append_tclip(rtags,laststart,thisstart,thisright,line.top,line_right,line.bottom);laststart = thisstart end
code syl   :   if fxgroup.xray_lastsyl then tags =append_tclip(tags,laststart,syl.end_time,line_right,line.top,line_right,line.bottom);ltags =append_tclip(ltags,laststart,syl.end_time,line_left,line.top,line_right,line.bottom) end


template syl fxgroup xray_lastsyl notext  :  !retime("line",0,0)!{\fad(100,250)!ltags!}!line.text_stripped!
template syl fxgroup xray_lastsyl notext  :  !retime("line",0,0)!{\fad(100,250)!rtags!}!line.text_stripped!
template syl fxgroup xray_lastsyl notext  :  !retime("line",0,0)!{\fad(100,250)!tags!\1a&HFF&\bord!xrayborder!\3c&HFFFFFF&}!line.text_stripped!

-คาราโอเกะตั้งชื่อactor ว่าmainkara
เอฟเฟคนี้ สไตล์ของอักษรไม่ควรมีเงา

--------------------------------------------------------------------------------

5 Progressbar




code line  : fxgroup.progressbar = (line.actor=="mainkara"); tags =string.format("\\clip(%d,%d,%d,%d)",line.left,line.top,line.left,line.bottom);syls = ""; drawg = ""; for c = 0,math.floor(line.width*2.5/20) do c2 = c*20; c22 = c2+10; drawg =drawg .. string.format("m %d %d l %d %d l %d %d l %d %d",line.left+c2,line.top,line.left+c22,line.top,line.left+c22-line.height,line.top+line.height,line.left+c2-line.height,line.top+line.height) end


code syl  : tags = tags ..string.format("\\t(%d,%d,\\clip(%d,%d,%d,%d))",syl.start_time,syl.end_time,line.left,line.top,line.left+syl.right,line.bottom);syls = syls ..string.format("{\\kf%d}%s",syl.kdur,syl.text_stripped);fxgroup.progressbar_end = fxgroup.progressbar and (syl.i ==orgline.kara.n)


template syl fxgroup progressbar_end notext  :!retime("line",0,0)!{\an7\move(!-line.width!,0,0,0)\fad(100,200)!tags!\k!line.duration/10!}{\k0\shad0\bord0\p1}!drawg!
template syl fxgroup progressbar_end notext  : {\fad(100,200)}!syls!

--------------------------------------------------------------------------------------------------


เนื่องจากเอฟเฟคมันยาวเพื่อไม่ให้สับสนจะแยกกระทู้ทีละ5เอฟเฟคนะครับ
มีทั้งหมด24เอฟเฟครวมทั้งหมดเอฟเฟคของaichanมี5กระทู้
แล้วก็จะค่อยๆทะยอยเอาลง เพราะบางส่วนต้องอธิบายวิธีใช้งาน+ทำรูปภาพ
ใครรีบร้อนก็ไปโหลดเอฟเฟคมาได้ตามลิ้งค์ข้างต้นครับ




เอาอันนี้ไปลองดูครับ

เอฟเฟคคาราโอเกะai-chan

รวมเอฟเฟคของไอจังไว้ เชิญเอาไปศึกษาทัศนาได้
http://www.mediafire.com/?sharekey=41fcf2f7b65a01c575a4fc82078ae6c83f9759baa3374789416b94653a3044fd






[Donate Tz]


ปิดเทอม!! แว้วว~*0*

ThaiZeeD Ritsu HBD Tz Azusa

  • โมเอะ: 418
  • Money: 3825
  • Tz: 494
  • Posts: 626
  • Donate: 150 THB
  • Joined: 30-6-2012
พลังน้ำใจ: 454
   Pet:
Hatsune Miku Cos
๏มิคุ >< เนี้ยวว~

โพสต์เมื่อ 14-7-2012 13:02:58 |แสดงโพสต์ทั้งหมด
ขอบคุนครับ



[Expert Member]


  • โมเอะ: 62
  • Money: 95
  • Tz: 62
  • Posts: 3
  • Donate: 0 THB
  • Joined: 23-6-2012
พลังน้ำใจ: 0
โพสต์เมื่อ 21-7-2012 23:23:34 |แสดงโพสต์ทั้งหมด
เจ๋งดีนะครับ ๆ

pee
[Diamond Member]


Rika Halloween 2013 อิโนริ HBD Tz Azusa Yui Hatsune Miku Tokisaki Kurumi 2Y Itsuka Shido Yatogami Tohka Tobiichi Origami Itsuka Kotori Yoshino Tokisaki Kurumi Yukina Saitama Inori

  • โมเอะ: 348
  • Money: 1176
  • Tz: 348
  • Posts: 97
  • Donate: 0 THB
  • Joined: 28-7-2012
พลังน้ำใจ: 0
โพสต์เมื่อ 12-12-2012 17:28:24 |แสดงโพสต์ทั้งหมด
โอ้......ยากจังแฮะ

[Expert Member]


  • โมเอะ: 58
  • Money: 105
  • Tz: 58
  • Posts: 17
  • Donate: 0 THB
  • Joined: 26-6-2014
พลังน้ำใจ: 0
โพสต์เมื่อ 26-6-2014 11:45:47 |แสดงโพสต์ทั้งหมด
ขอบคุณครับ


ปิด

ประกาศจาก Admin

ช่วยบริจาคค่า VPS หน่อยจ้า
ช่วยบริจาคค่า VPS หน่อยจ้า
ช่วยหน่อยเนอะ ไม่ได้บังคับนะเออ เเต่สักหน่อยก๊ยังดี ^^

ดู »

ThaiZeed

|ดูการ์ตูนออนไลน์|โหลดการ์ตูน|Doujin|ดูการ์ตูนซับไทย|ดูการ์ตูนพากย์ไทย|อ่านการ์ตูน|

GMT+7, 9-12-2016 03:01 , Processed in 0.070279 second(s), 28 queries , Xcache On.

Powered by Discuz!

© 2001-2012  Template BY: GDC & 2th