[UNITY] [Spine] Separator by

31
May
0

การใช้ Spine ร่วมกับ UNITY นั้นทำให้การทำงานง่ายขึ้นมาก แต่ก็มีหลายอย่างที่ถูกจำกัดไว้ ถ้าหากเราอยากแบ่ง Order in Layer ของ Spine ให้มีหลายชั้น เพื่อที่จะได้เอา Particle หรือ Object อื่นๆมาสอดไว้ตรงกลางก็จะต้องทำตามขั้นตอนดังนี้

  • หลังจากสร้าง Spine GameObject (skeleton) แล้วเราก็จะมี หน้าตาแบบนี้ และประกอบด้วย Script ดังรูปนี้1
  • หากอยากให้ Spine GameObject นี้มีการแบ่ง Layer ให้คลิ๊กขวาที่ Skeleton Animation (Script)2
  • และเลือก Add Skeleton Render Separator3
  • จะได้ Script ใหม่โผล่ออกมาแบบนี้4
  • ให้แก้เลข Size ใต้หัวข้อ Separator Slot Names ให้เป็น 15
  • จะมี Element0 มาให้เลือก ตัวเลือกจะเรียงจากชั้นล่างสุดไปถึงชั้นบนสุดให้อยู่แล้ว ให้เราเลือกมา 1 อัน6
  • เมื่อเลือกแล้วให้คลิ๊กที่ Add the missing renderer7
  • จะได้ผลลัพท์ดังนี้8
  • จะเห็นว่า Spine GameObject ของเรามี ลูกโผล่ออกมา 2 ตัว และเมื่อลอง Play และ ดูที่ลูกของ Spine GameObject ก็จะเห็นดังนี้10 9

ปอลิง. สำคัญมาก หากอยากแยก Layer ระหว่าง Shadow และส่วนประกอบอื่นๆ ห้ามเลือก Shadow ให้เลือกของที่อยู่เหนือ Shadow ไป 1 ชิ้น จึงจะได้ผลลัพท์แบบที่ต้องการรรรรร

Unity3d trick: เราจะเก็บค่าตัวแปรใน Inspector ไม่ให้หายไปเมื่อเราเปลี่ยนชื่อตัวแปรได้อย่างไร? by

31
May
0

ไม่ว่าใครใช้ Unity ก็คงจะมีปัญหาโลกแตกนี้คืออยากจะเปลี่ยนชื่อตัวแปร public ที่ปรากฏใน Inspector แต่ปรากฏว่าค่าต่างๆ ที่เคยใส่ไว้ รวมไปถึง GameObject ต่างๆ ที่เคยลากมาแปะลงในตัวแปรไว้จะหายไปหมด ถ้าเปลี่ยนชื่อตัวแปรเป็น 10 ตัว ค่าทั้ง 10 ตัวก็จะหายไปหมด มันช่างน่าเบื่อเสียจริงๆ ที่ต้องมาใส่ค่าพวกนี้ใหม่ วันนี้เรามีทางออกสำหรับปัญหานี้แล้ว สมมติเรามี Code ดังนี้

inspector2

ก็จะได้ Inspector ดังรูป

inspector

ถ้าอยากจะเก็บค่าตัวแปรเดิมไว้ก็ทำแบบนี้ครับ

inspector3

ก็จะได้แบบนี้

inspector4

หลังจากนั้นเอาส่วนของ [FormerlySerializedAs("MyValue")] กับ [FormerlySerializedAs("MyGameObject")] ออกก็ได้ค่าก็จะยังคงอยู่ตลอดไป เป็นไงละครับ ง่ายดีไหม :)

ที่มา: https://www.facebook.com/GameTorrahod/photos/pcb.1101786133215513/1101784646548995/?type=3&theater

ข้อควรระวังในการใช้ SimpleJSON by

31
May
0

เนื่องจากทีมได้ใช้ SimpleJSON กันมานานระดับนึงแล้ว แต่ก็ยังมีบั๊คโผล่มาจากการเขียนโค้ดเพิ่มอยู่บ้างบางครั้ง จากเจ้า SimpleJSON ซึ่งมันง่ายสมชื่อ จนทำให้การใช้งานมันสร้างบั๊คแบบไม่รู้ตัวได้ง่ายมากๆ คือการ .Asใดๆ ก็ตามของมัน (ie. .AsInt .AsFloat) ที่มันจะสร้างตัวแปรใหม่มากำหนดค่าเริ่มต้นมาให้เลยทั้งๆที่มันไม่มี index นี้อยู่หรือเป็น null ส่วนมากมักเกิดจากการเช็คเงื่อนไข if ทั่วๆไปที่จะชอบเผลอใส่ .AsInt เข้ามา ทำให้มันมีค่าขึ้นมาเองทันที และการเข้าถึงตัวแปรชั้นลึกๆแล้ว .AsInt โดยที่ไม่เช็คก่อนว่ามีหรือเปล่า ก็จะสร้างขึ้นมาให้เช่นกัน และอีกเรื่องคือการเช็คว่าเป็น JSONClass เปล่าๆ หรือ JSONArray เปล่าๆหรือไม่ ถ้าเช็คไม่ครบก็จะผิดเงื่อนไขเอาง่ายๆ

  • เรามาเริ่มที่เรื่องแรกก่อน

สิ่งที่ควรหลีกเลี่ยงเลยคือการใช้ .Asใดๆ (หลังจากนี้จะใช้ .AsInt เป็นหลัก) เพื่อดึงค่าตัวเลขที่เราไม่แน่ใจว่ามี index นี้หรือยัง จะทำให้ข้อมูลผิดพลาด

แบบที่ควรหลีกเลี่ยง

JSONNode test = new JSONClass();
int id = test["id"].AsInt; //จะทำให้ index ที่ชื่อ id เป็น 0 ทั้งๆที่ไม่เคยกำหนดค่ามาก่อน
if (test["number_id"].AsInt >= 0){
//ถ้าเช็คแบบนี้เงื่อนไขนี้จะถูกเสมอเพราะโดนกำหนดค่า 0 ตอน .AsInt
}

สิ่งที่ควรทำ

JSONNode test = new JSONClass();
int id = -1;
if (test["id"] != null)
id = test["id"].AsInt //จะทำให้ id ถูกต้องโดยจะเป็น -1 ถ้าไม่มี index ดังกล่าว
if (test["number_id"] !=null && test["number_id"].AsInt >= 0){
//ถ้าเช็คแบบนี้เงื่อนไขนี้จะไม่พลาดเข้าเงื่อนไขเมื่อไม่ได้กำหนด index number_id มา
}

  • ถัดมาเรื่องการเช็ค JSONArray และ JSONClass เปล่า ทั้งคู่นี้ใช้การเช็ค Empty ต่างกัน

JSONArray testArray = new JSONArray();
//ใช้
if (testArray.AsObject == null)


JSONClass testObject = new JSONClass();
//ใช้
testObject.AsObject != null && testObject.AsObject.Count > 0

จากที่เห็นผิดนิดเดียวก็เกิดบั๊คกระจุยกระจายได้ ดังนั้นระมัดระวังกันด้วยนะครับ SimpleJSON ใช้ง่าย บั๊คก็ง๊ายง่ายเช่นกัน

แนะนำ การใส่สีให้เลเยอร์เพื่อแยกกลุ่ม / การเปลี่ยนThumbnailsของเลเยอร์ PS cs6 by

30
May
0

1.1 การใส่สีให้เลเยอร์เพื่อแยกกลุ่ม เริ่มแรกคลิกขวาที่เลเยอร์ ตามรูป
01

1.2 เมื่อคลิกจะมีป๊อปอัพขึ้นมา ให้เลือกสีใส่เลเยอร์จากตรงนี้ได้เลย ตามรูป การใส่สีเลเยอร์ก็เพื่อให้ง่ายต่อแยกเป็นกลุ่มๆครับ ^_^
02

2.1 การเปลี่ยนThumbnailsของเลเยอร์ อย่างแรกคลิกขวาที่กรอบรูปเลเยอร์ ตามรูป(คลิกตรงนี้)
03

2.2 มื่อคลิกจะมีป๊อปอัพขึ้นมา จะมีรูปแบบThumbnailsให้เลือกเปลี่ยน 4 แบบ แต่ละแบบก็โชว์รูปเลเยอร์เล็กใหญ่ตามที่เลือกครับ
04

หวังว่าจะได้ลองใช้ดูนะครับ

การเซ็นเซอร์ภาพด้วยเอฟเฟค masaic by

30
May
0

การทำภาพเซ็นเซอร์เพื่อใช้ในโอกาสต่างๆ จะการ์ตูนแก๊ก ลงข่าว อะไรก็ว่าไป
01
02
ในPTSจะมีฟิลเตอร์ต่างๆให้ใช้มากมาย วันนี้จะมาพูดถึงmasaicที่ใช้เซ็นเซอร์กันอย่างแพร่หลาย
ปุ่มอยู่ในfilter>>Pixelate>>Mosaic
03

ก็จะขึ้นหน้าต่างแบบนี้

04 

โดยสามารถปรับความละเอียดของpixelได้จากละเอียดมากๆ>>>หยาบแบบสี่เหลี่ยมใหญ่ๆ

05

06

07

 

หากต้องการใช้filterนี้เฉพาะจุดก็สามารถใช้selectionได้

08 09

กู้เงิน | เศรษฐกิจพอเพียง | สินเชื่อบุคคล | สมัครบัตรกดเงินสด | สินเชื่อ | เงินกู้ด่วน | ยืมเงินทรูมูฟ | เงินด่วนนอกระบบ