หน้าจอ
การใช้ฟังก์ชันการจับภาพหน้าจอ
คุณสามารถใช้ฟังก์ชันที่เกี่ยวข้องกับภาพของ ZepetoWorldContent API เพื่อบันทึกหรือแชร์ภาพภายในโลก และโพสต์ภาพไปยังฟีดได้
ZepetoWorldContent API มีฟังก์ชันที่เกี่ยวข้องกับภาพดังต่อไปนี้
API | คำอธิบาย |
|---|---|
ZepetoWorldContent.SaveToCameraRoll(rt: UnityEngine.RenderTexture, result: System.Action$1) | บันทึกรูปภาพไปยังห้องสมุดภาพถ่าย |
ZepetoWorldContent.SaveToCameraRoll(texture: UnityEngine.Texture2D, result: System.Action$1) | บันทึกรูปภาพไปยังห้องสมุดภาพถ่าย |
ZepetoWorldContent.Share(rt: UnityEngine.RenderTexture, result: System.Action$1) | แชร์รูปภาพไปยังแอปพลิเคชันภายนอก |
ZepetoWorldContent.Share(texture: UnityEngine.Texture2D, result: System.Action$1) | แชร์รูปภาพไปยังแอปพลิเคชันภายนอก |
ZepetoWorldContent.CreateFeed(rt: UnityEngine.RenderTexture, contents: string, result: System.Action$1) | อัปโหลดรูปภาพไปยังฟีด เนื้อหาของโพสต์สามารถระบุได้ผ่านอาร์กิวเมนต์ที่สอง, contents แท็กโลกจะถูกนำไปใช้โดยอัตโนมัติและโพสต์ไปยังฟีด |
ZepetoWorldContent.CreateFeed(texture: UnityEngine.Texture2D, contents: string, $result: System.Action$1) | อัปโหลดรูปภาพไปยังฟีด เนื้อหาของโพสต์สามารถระบุได้ผ่านอาร์กิวเมนต์ที่สอง, contents แท็กโลกจะถูกนำไปใช้โดยอัตโนมัติและโพสต์ไปยังฟีด |
ต่อไปนี้คือตัวอย่างการเรียกใช้ฟังก์ชันภาพภายใน ZepetoWorldContent.
ZepetoWorldContent.SaveToCameraRoll(this.renderTexture, (result: boolean) => {console.log(`ผลการบันทึก : ${result}`)});
ZepetoWorldContent.SaveToCameraRoll(this.texture2D, (result: boolean) => {console.log(`ผลการบันทึก : ${result}`)});
ZepetoWorldContent.Share(this.renderTexture, (result: boolean) => {console.log(`ผลการแชร์ : ${result}`)});
ZepetoWorldContent.Share(this.texture2D, (result: boolean) => {console.log(`ผลการแชร์ : ${result}`)});
ZepetoWorldContent.CreateFeed(this.renderTexture, "[เนื้อหา]", (result: boolean) => {console.log(`ผลการสร้างฟีด : ${result}`)});
ZepetoWorldContent.CreateFeed(this.texture2D, "[เนื้อหา]", (result: boolean) => {console.log(`ผลการสร้างฟีด : ${result}`)});
ต่อไปนี้คือตัวอย่างโค้ดที่ใช้ฟังก์ชันของโหมดภาพหน้าจอใน ZepetoWorldContent โดยใช้ RenderTexture.
import { Camera, RenderTexture } from 'UnityEngine';
import { Button, Text } from 'UnityEngine.UI';
import { SpawnInfo, ZepetoPlayers } from 'ZEPETO.Character.Controller';
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { WorldService, ZepetoWorldContent } from 'ZEPETO.World';
export default class ZepetoWorldContentExample extends ZepetoScriptBehaviour {
// ZepetoWorldContent UI สำหรับภาพหน้าจอ
public cameraRenderButton: Button;
public saveToCameraRollButton: Button;
public shareButton: Button;
public createFeedButton: Button;
public logText: Text;
// กล้องเรนเดอร์
private camera: Camera;
// เรนเดอร์เท็กซ์เจอร์
public renderTexture: RenderTexture;
Start() {
ZepetoPlayers.instance.CreatePlayerWithUserId(WorldService.userId, new SpawnInfo(), true);
ZepetoPlayers.instance.OnAddedLocalPlayer.AddListener(() => {
this.camera = ZepetoPlayers.instance.LocalPlayer.zepetoCamera.camera;
});
this.cameraRenderButton.onClick.AddListener(() => {
this.camera.targetTexture = this.renderTexture;
this.camera.Render();
this.camera.targetTexture = null;
});
this.saveToCameraRollButton.onClick.AddListener(() => {
ZepetoWorldContent.SaveToCameraRoll(this.renderTexture, (result: boolean) => {
this.logText.text = `ผลการบันทึก : ${result}`;
});
});
this.shareButton.onClick.AddListener(() => {
ZepetoWorldContent.Share(this.renderTexture, (result: boolean) => {
this.logText.text = `ผลการแชร์ : ${result}`;
});
});
this.createFeedButton.onClick.AddListener(() => {
ZepetoWorldContent.CreateFeed(this.renderTexture, "[เนื้อหา]", (result: boolean) => {
this.logText.text = `ผลการสร้างฟีด : ${result}`;
});
});
}
}- ไม่สามารถตรวจสอบได้ในโหมด Unity editor แต่สามารถตรวจสอบได้เมื่อเล่นในแอปพลิเคชัน
จับภาพหน้าจอ
มอดูลจับภาพหน้าจอจะรวมอยู่ใน Build it Unity Plug-in และสามารถตรวจสอบสคริปต์ของโมดูลได้ที่ GitHub ด้านล่างนี้
📘 โมดูลจับภาพหน้าจอ Build it Unity Plug-in
วิธีการใช้ภาพหน้าจอ

ฟีเจอร์สกรีนช็อตสามารถใช้ได้โดยการกดไอคอนกล้องทางด้านขวาของหน้าจอ Play ของ Build it Unity Plug-in World

- 1: ปุ่มโหมดเซลฟี
- ใช้สลับกล้องไปยังโหมดเซลฟี
- 2: ปุ่มถ่ายภาพ
- สามารถถ่ายภาพหน้าจอการเล่นได้ค่ะ
- 3: ปุ่มบันทึกวิดีโอ
- สามารถบันทึกหน้าจอการเล่นได้ค่ะ
- 4: ปุ่มออก
- คุณสามารถออกจากโหมดจับภาพหน้าจอได้
✏️ สมุด
- บอลลูนคำพูดแชทติ้งไม่ได้ถ่ายทำ โปรดทราบไว้ด้วยนะคะ
การถ่ายภาพ

เมื่อกดปุ่มถ่ายภาพ จะปรากฏหน้าต่างป๊อปอัพเช่นด้านบนค่ะ หากกดปุ่ม Upload รูปที่ถ่ายจะถูกอัพโหลดไปยัง Zepeto Feed ของฉันทันทีค่ะ
- รูปภาพจะถูกอัปโหลดไปยังฟีดพร้อมกับข้อความพื้นฐาน Description ที่ตั้งค่าไว้ในสกรีนช็อต Prefab โปรดอ้างอิงวิธีการเปลี่ยนข้อความจับภาพหน้าจอ Descriptionถึงวิธีการเปลี่ยนข้อความพื้นฐาน
คลิกที่ปุ่ม Edit เพื่อแก้ไขข้อความโพสต์ก่อนที่จะอัปโหลดภาพหน้าจอไปยังฟีดค่ะ

- 1: ปุ่มที่ใช้ร่วมกัน
- คุณสามารถแชร์ภาพหน้าจอได้
- 2: ปุ่มดาวน์โหลด
- ฉันสามารถบันทึกภาพหน้าจอในอุปกรณ์ของฉัน
- 3: ปุ่มออก
- คุณสามารถออกจากโหมด Edit ได้
- 4: หน้าต่างแสดงตัวอย่างภาพ
- คุณสามารถแสดงตัวอย่างภาพหน้าจอที่ถ่ายไว้ได้
- 5: แก้ไขข้อความโพสต์
- คุณสามารถแก้ไขข้อความที่จะอัปโหลดไปยัง Zepeto Feed พร้อมกับภาพหน้าจอค่ะ
- 6: ปุ่มอัปโหลด
- สามารถอัปโหลดภาพหน้าจอและข้อความไปยัง Zepeto Feed ค่ะ
การบันทึกวิดีโอ

การบันทึกจะเริ่มขึ้นเมื่อกดปุ่มบันทึกวิดีโอและแสดงเวลาบันทึกค่ะ
โหมดเซลฟี

เมื่อคุณแตะที่ไอคอนถ่ายภาพหน้าจอ ไอคอนโหมดเซลฟีจะปรากฏขึ้น

แตะไอคอนเพื่อเข้าสู่โหมดเซลฟี

ในโหมดเซลฟี ตัวละครจะหันมามองกล้อง หากกล้องขยับเกินมุมที่กำหนด ตัวละครจะหันกลับมามองด้านหน้า
คุณสามารถถ่ายภาพหรือวิดีโอได้ในขณะเปิดใช้งานโหมดเซลฟี
แตะไอคอนอีกครั้งเพื่อปิดโหมดเซลฟี และเมื่อออกจากฟีเจอร์ถ่ายภาพหน้าจอ โหมดเซลฟีก็จะถูกปิดโดยอัตโนมัติ
วิธีการเปลี่ยนข้อความจับภาพหน้าจอ Description
เมื่ออัพโหลดโพสต์ผ่านปุ่ม Upload ของหน้าต่างป๊อปอัพ ภาพหน้าจอจะอัพโหลดพร้อมกับข้อความพื้นฐาน '#ZEPETOWorld #ZEPETO #Bildy #World' ค่ะ

ข้อความในกล่อง Description ที่ปรากฏเมื่อกดปุ่ม Edit ยังเป็นข้อความพื้นฐาน '#ZEPETOWorld #ZEPETO #Bildy #World'

วิธีการเปลี่ยนข้อความปริยาย Description มีดังนี้
ในบานหน้าต่าง Hierarchy ด้านซ้าย ให้เลือก Managers > ScreenShot

ในหน้าต่าง Inspector ด้านขวา ให้กดปุ่ม Open ที่อยู่ใต้พื้นที่ Prefab เพื่อเปิด ScreenShot Prefab

ในบานหน้าต่าง Hierarchy ด้านซ้าย ให้เลือก ScreenShot > SafeArea > ScreenShot > PreviewPanel > PreviewTextFieldPanel > PreviewInputField

ค้นหาช่อง Text ในหน้าต่าง Inspector ด้านขวา และเปลี่ยนเป็นข้อความที่ต้องการ

การเปลี่ยนแปลงข้อความดังตัวอย่างด้านล่างจะยืนยันได้ว่าข้อความในกล่อง Description มีการเปลี่ยนแปลงค่ะ


เมื่อไม่เห็นไอคอนภาพหน้าจอ

เมื่อไม่เห็นปุ่มจับภาพหน้าจอทางด้านขวาของหน้าจอเล่นดังที่กล่าวมาแล้ว จะมีวิธีแก้ดังนี้
ในบานหน้าต่าง Hierarchy ด้านซ้าย ให้เลือก Managers > ScreenShot

กาเลือกที่กล่องตรวจสอบด้านซ้าย ในหน้าต่าง Inspector ด้านขวา
