ตัวเสริมสำหรับค้นหาช่องซ้ำ และ เปรียบเทียบ ใน Google Spreadsheet by Ziah
Oct0
ปัญหาที่มักเกิดขึ้นเวลาใช้ Google Spreadsheet ร่วมกันคือ มีการใส่ข้อมูล ไม่ว่าจะคีย์หรือข้อมูลซ้ำทำให้การใช้ Ctrl F ธรรมดาๆค่อนข้างเสียเวลา และยิ่งถ้าต้องเปรียบเทียบ 2 Sheet ยิ่งแล้วใหญ่ เลยมี Add on ตัวนี้มาช่วยแก้ไขปัญหาครับ
- ขั้นตอนแรกต้องเพิ่ม Add on นี้เข้ามาก่อน
- ค้นหาโดยใช้คำว่า Duplicate ก็จะเจอเป็นตัวแรก กด +Free เพื่อเพิ่มเลยครับ
- จะมี 2 หัวข้อมาให้ใช้เริ่มที่ตัวแรก ค้นหาค่าซ้ำหรือ ค่าที่ไม่ซ้ำ
- เลือกส่วนที่ต้องการค้นหา
- เลือกสิ่งที่จะทำ
- ค้นหาตัวซ้ำ
- ค้นหาตัวซ้ำนับตัวแรกด้วย
- ค้นหาตัวที่ไม่มีซ้ำ
- ค้นหาตัวที่ไม่มีซ้ำรวมตัวแรก
- เลือกออพชั่นต่างๆ เช่นไม่นับช่องว่าง ไม่นับตัวเล็กใหญ่ต่างกัน
- อันนี้แหละที่เจ๋ง สมมติเราเลือกซ้ำมา เราสามารถกำหนดได้ว่าจะให้มันทำอะไร
- ใส่สีให้ช่องนั้นๆ ถ้ามีซ้ำ (อันนี้ชอบมาก)
- ใส่สตาตัสให้กับช่องนั้นๆ
- คัดลอกไปไว้อีกที่หนี่ง
- ย้ายไปไว้อีกที่หนึ่ง
- ล้างค่า
- ลบแถว
- แล้วเราก็จะได้ผลลัพธ์ดังรูป
ต่อไปเป็นหัวข้อเลือกเปรียบเทียบ ใช้งานคล้ายๆด้านบนเพียงแค่ต้องเลือก Sheet เท่านั้นเองครับผม
[ทิป] วิธีง่ายๆในการเช็คหน้าตาของเว็ปเราในหลายๆความละเอียดจอและความเร็วอินเตอร์เน็ทได้ด้วย Google Chrome! by Ziah
Sep0
เรื่องนี้ค้นพบโดยบังเอิญมากๆ ไม่รู้ว่าทาง Google Chrome แถมมาให้ตั้งแต่ Build ไหน เอาว่าตอนนี้เค้ามีให้ใช้กันก็ลองดูครับ โดยเปิดเว็ปของเราก่อนเลย
- ขั้นแรกให้เปิด Development Tools โดยกด F12 หรือ Ctrl+Shift+I เสร็จแล้วกดปุ่มรูปโทรศัพท์มือถือในวงกลมดังรูปเลยครับ
- ตรง Screen เราสามารถใส่รายละเอียด Resolution เองได้เลย อย่างในรูปจะเป็น 1440 x 900
- เรายังสามารถเช็คจอตามโทรศัพท์มือถือได้ด้วย Preset ที่เขาจัดมาให้ด้วยครับ อย่างในรูปจะเป็น iPhone 6
- กดปุ่มด้านข้างรุ่นโทรศัพท์เพื่อพลิกจอดูได้ด้วยครับ
- และสุดท้าย อันนี้ดี ปรับความเร็ว Internet ในการโหลดหน้าเว็ปของเราก็ได้ด้วยนะครับ
[Lua] วิธีการ Debug แบบที่ต้องพึ่งผลลัพธ์แบบสุ่มจากฟังก์ชั่น math.random() by Ziah
Aug0
โดยปกติแล้วในโค้ดของเรา ถ้ามีการสุ่มเราจะพึ่ง ฟังก์ชั่น math.random() แต่ที่ในเวลาเราที่เราจะ Debug ฟังก์ชั่น math.random() ของเราจะรีเทิร์นค่าเดิมมาเสมอๆ
ทีนี้เราจะทำยังไงล่ะ ถ้าสมมติโค้ดของเราใช้ได้บ้างพังบ้าง มันก็อาจจะเกิดจากค่าที่เราใช้จาก math.random() ยกตัวอย่างเช่นโจมตีติด Critical หรือใส่ดีบัฟติดหรือเปล่า รันกี่รอบๆก็จะได้ผลลัพธ์เดิมๆเพราะ math.random() ของเราคืนค่าเดิมมาตลบอดนั่นเอง
ตัวอย่างเช่น
print(math.random(100))
57
ซึ่งเรารันอีกกี่ทีก็จะได้ 57 เหมือนเดิม
วิธีการ Debug ให้ได้หลายผลลัพธ์แรกคือ
1. ใส่ For ครอบ
for i=0, 10 ,1 do
print(isCritical(50)) //ใน isCritical มีเช็ค % กับ math.random(100)
end
false
false
false
false
*
จะทำให้ math.random() ของเราทำงานหลายครั้งและเปลี่ยนค่า จากตัวอย่างอาจจะติดในลูปครั้งที่ 5 และ Error ทันที
แต่ถ้าเรามีการกำหนด Seed ไว้ก่อน ให้นำ seed จากรอบที่มีปัญหามาเช็คได้เลย
2. กำหนด randomseed ก่อน
math.randomseed(seed)
print(isCritical(50))
ก็จะทำให้เราพบบรรทัดที่ Error ได้เลยเพราะ จะ Debug Error ในทันทีครับ
[Lua] การทำ เซ็ทแบบไม่เรียง จาก Table by Ziah
Jul0
การทำ เซ็ทแบบไม่เรียง จาก Table นั้นทำมาเพื่อความประหยัดการประมวลผล ซึ่งโดยปกติแล้วถ้าเราใช้ Table เวลาเราจะดึงข้อมูลเราจะวน For จนกว่าจะเจอสิ่งที่เราต้องการแล้วค่อยดึง ทำให้ใช้การประมวลผลจำนวนมากกว่า การทำ Set ซึ่งจะเข้าถึง Index โดยตรง ซึ่งวิธีทำก็ไม่ยาก ใช้ 3 ฟังก์ชั่นด้านล่าง input ตัวแรกจะเป็น table ที่เราสร้างขึ้นมา ส่วนตัวที่สองก็เป็น key ที่เราจะใช้ในการเพิ่มลดหรือค้นหานั่นเอง
function addToSet(set, key)
set[key] = true
end
function removeFromSet(set, key)
set[key] = nil
end
function setContains(set, key)
return set[key] ~= nil
end
credits: http://stackoverflow.com/questions/2282444/how-to-check-if-a-table-contains-an-element-in-lua
[Unity] วิธีการแก้ไขเมื่อนำ 3D Particle มาใช้ในโหมด 2D แล้วแสดงผลไม่ตรง by Ziah
Jun0
หลังจากที่ได้แอบคลุกคลีกับ Particle System ใน Unity ปัญหาหลักที่เกิดจาก Particle บางเจ้าคือ พอนำมาใช้ในเกม 2D ของเราแล้วการแสดงผลดูไม่เหมือนกับที่รันในโปรเจ็คตัวอย่าง อะไรๆมันดูขาดๆไป ทำให้ได้ข้อแนะนำแรกเลยคือ ตอนนำมาใช้ในโปรเจ็คเรา ให้เปิดโหมด 3D ดูก่อน โดยส่วนตัวแนะนำให้ดูแบบ isometric จะทำให้เห็นภาพที่จะใช้กับแบบ 2D ได้ชัดเจนขึ้น พอเปิด 3D ขึ้นมาเราก็จะอ๋อเองแหละครับ หลายๆอย่างที่มันหายไปเพราะมันขนาบกับแกน X ใน 2D ของเรายังไงล่ะ!! เพราะเรามองได้มุมเดียวตลอด วัตถุบางอย่างที่มา Billboard ขนาบไปกับแกน X เราก็จะมองไม่เห็นเลยเพราะมันคือแผ่นบางๆที่ไร้ความหนา หมุนแกนอะไรก็หมุนไม่ได้ ทีนี้จะแก้อย่างไร ทำตามนี้เลยครับผม
ขั้นแรกไปที่ GameObject ด้านใน ให้แก้เฉพาะตัวที่เราจะต้องแก้ ซึ่งก็คือตัวที่ไม่เห็นในจอตอนโหมด 2D นั่นเอง ทีนี้ค่าที่เราต้องแก้ก็คือเจ้า Renderer นี่เอง ปกติไม่ว่าจะใช้ Render Mode เป็น Billboard แบบไหนก็ตาม มันจะเป็นแผ่นขนาบไปกับแกน ซึ่งหมุนอะไรมันไม่ได้เลย ดังนั้นเราเลยต้องเปลี่ยนตัว Render Mode นี่แหละครับ โดยพื้นฐานให้เปลี่ยนเป็น Mesh แล้วเลือกรูปแบบ Plane ซึ่งหลังจากปรับเสร็จเราต้องซูมออกมาจัดขนาดเสียก่อนเล็กน้อย แต่ว่ามันก็ยังมองไม่เห็นใน 2D อยู่ดีนี่นา
ที่ยังมองไม่เห็นเพราะมันยังขนาบแกน X เหมือนเดิมยังไงล่ะ เราก็จับหมุนแกน X ซะ จากตอนแรกที่หมุนไม่ได้ พอเปลี่ยนมาเป็น Render Mode แบบนี้ก็จะหมุนได้ตามใจเลยล่ะครับ แนะนำให้ไปรันกับตัวเกมจริงแล้วดูองศาเกม แล้วปรับองศาของ Particle ให้ตรงกับ Perspective ในเกมของเรานะครับ
เสร็จ!! พร้อมใช้งาน!!