ローディング画面を作成する(1)(カメラの画面)

もっけ
もっけ

ローディング画面をカスタムするにあたって、

先ずは、CFrameについて覚えよう!

サラ
サラ

CFrameってなに?

もっけ
もっけ

CFrameは、Coordinate Frameの略、直訳すると座標枠。

CFrameは、パーツ等のX、Y、Zの位置情報、X軸、Y軸、Z軸に対する角度を持つんだ。

出来るようになること

  • ゲーム起動直後のローディング画面を作れる
  • ローディング画面を自由な場所にできる

カメラを操る

カメラの視点を変えるのは、簡単。
プレイヤーのカメラ視点(CurrentCamera.CFrame)をパーツのCFrameに設定します。

CurrentCameraとは、ローカルプレイヤーのカメラのことです。

もっけ
もっけ

カメラにしたいパーツを置きました。パーツの名前は、”SubCam”にしています。

StarterGuiにScreenGuiを追加し、TextButtonでPLAYボタンを追加します。
PLAYボタンは画面上に表示させるため、Visible = trueにしておきます。
追加したPLAYボタンにLocal Scriptを追加します。

-- ① ゲーム起動時の処理
local camera = workspace.CurrentCamera

repeat wait()
	camera.CameraType = Enum.CameraType.Scriptable  -- カメラをデフォルトの設定値から変える
until camera.CameraType == Enum.CameraType.Scriptable

camera.CFrame = workspace.SubCam.CFrame -- プレイヤーのカメラ視点を"SubCam"に移す

-- ②PALYボタンの処理
local button = script.Parent

local function PlayGame()
	button.Visible = false -- PLAYボタンを消す
	workspace.CurrentCamera.CameraType = Enum.CameraType.Custom -- カメラをデフォルトに戻す
end

button.MouseButton1Click:Connect(PlayGame) -- PLAYボタンが押されたら、PlayGameを呼び出す
もっけ
もっけ

カメラの視点をパーツに設定して、PLAYボタンが押されたらデフォルトに戻すようにしてるよ!

サラ
サラ

ゲームの雰囲気を伝えられる画面をローディング画面に出来たら良さそうだね!

コメント

タイトルとURLをコピーしました