使用对象移动和障碍物操作的世界示例
38 分
示例项目
总结
总结 | - 这是一个针对ZEPETO世界开发初学者的跟随讲座。 - 设置ZEPETO世界开发环境并学习ZEPETO角色控制器。 - 这是一个可以通过简单的GameObject移动代码和传送代码完成的跳跃地图。 |
|---|---|
难度 | 初学者 |
所需时间 | 30分钟 |
项目目标
- 了解如何使用ZEPETO模板创建Unity项目
- 世界ID互操作和ZEPETO登录
- 召唤ZEPETO角色并了解角色控制器
- 创建默认跳跃地图
- 使用ZEPETO脚本控制GameObjects的移动
- 使用ZEPETO脚本传送角色
完成世界的示例
第一部分:设置世界控制台
❗️ 注意 在观看此视频之前,请遵循 Unity 安装和 ZEPETO 模板注册指南 指南 完成基本安装。
- 学习如何设置 ZEPETO Studio 世界控制台。
- 学习如何使用 ZEPETO 模板设置 Unity 项目。
英文版
韩文版
第二部分:设置 ZEPETO 玩家
- 学习如何让 ZEPETO 角色出现在世界中。
英文版
韩文版
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { SpawnInfo, ZepetoPlayers, LocalPlayer, ZepetoCharacter } from 'ZEPETO.Character.Controller';
export default class CharacterController extends ZepetoScriptBehaviour {
Start() {
ZepetoPlayers.instance.CreatePlayerWithZepetoId("", "[ZEPETO_ID]", new SpawnInfo(), true);
ZepetoPlayers.instance.OnAddedLocalPlayer.AddListener(() => {
let _player : LocalPlayer = ZepetoPlayers.instance.LocalPlayer;
});
}
}
第三部分:移动物体
- 学习如何创建一个移动的GameObject。
英文版
韩文版
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
export default class Rotator extends ZepetoScriptBehaviour {
public rotationSpeedX: number = 0.5;
public rotationSpeedY: number = 0;
public rotationSpeedZ: number = 0;
Update() {
this.transform.Rotate(this.rotationSpeedX, this.rotationSpeedY, this.rotationSpeedZ);
}
}import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
import { Vector3, GameObject, Object, Time } from 'UnityEngine';
export default class Movement extends ZepetoScriptBehaviour {
public movingTime: number = 1;
public movingRangeX: number = 0;
public movingRangeY: number = 2;
private delta: number = 0;
private directionFlag: bool = true;
Update() {
this.delta += Time.deltaTime;
if (this.delta > this.movingTime) {
this.delta = 0;
this.directionFlag = !this.directionFlag;
}
if (this.directionFlag) {
// Move upward during the set moving time
this.transform.Translate(this.movingRangeX * Time.deltaTime, this.movingRangeY * Time.deltaTime, 0);
} else {
// Move downward during the set moving time
this.transform.Translate(-1 * this.movingRangeX * Time.deltaTime, -1 * this.movingRangeY * Time.deltaTime, 0);
}
}
}
第4部分. 传送ZEPETO角色
- 学习在角色到达物体时进行传送。
英文版
韩文版
import { Collider,Vector3,Quaternion } from 'UnityEngine';
import { ZepetoCharacter, ZepetoPlayer, ZepetoPlayers } from 'ZEPETO.Character.Controller';
import { ZepetoScriptBehaviour } from 'ZEPETO.Script';
export default class Teleport extends ZepetoScriptBehaviour {
private zepetoCharacter: ZepetoCharacter;
Start() {
// Zepeto角色对象
ZepetoPlayers.instance.OnAddedLocalPlayer.AddListener(() => {
this.zepetoCharacter = ZepetoPlayers.instance.LocalPlayer.zepetoPlayer.character;
});
}
OnTriggerEnter(collider: Collider) {
if (this.zepetoCharacter == null || collider.gameObject != this.zepetoCharacter.gameObject) {
return;
}
// 传送到原点位置
this.zepetoCharacter.Teleport(new Vector3(0, 0, 0), Quaternion.identity);
}
}
第5部分. 测试游戏
- 学习如何在移动设备上进行测试游戏。
英文版
韩文版
第6部分:利用资产商店
- 学习如何奢华地装饰你的世界。
英文版
韩文版
第7部分:启动世界
- 学习如何启动世界。
英文版