
🔝4️⃣キヨ シマエナガを愛するゲーム&サーバーエンジニアのとむです!! リリースアプリや活動→https://xitter.cf/t.co/K8sruGfFH7 ご連絡はDMまたはこちらへ [email protected] イラストは猫原のし様→https://xitter.cf/t.co/i5WdewixQJ
猫とシマエナガが好き
Joined October 2022
- Tweets4.1K
- Following1.1K
- Followers2.2K
- Likes8.8K
Pinned Tweet
【クローズドβ テスター募集|25名】
個人開発のアプリ・ゲームを「お互いにテストし合う」場所を作りました!
・作品の進捗を発信できる(devlog)
・観点を選んでテスト・感想を依頼できる
・バグ報告はテンプレで書きやすく
・辛口歓迎〜やさしめ、率直さの温度も選べる
このポストに「参加希望」とリプをいただければ、招待コードをDMでお送りします。
詳しく書きたい方はフォームからでも → docs.google.com/forms/d/e/1F…
#Tokusa #個人開発 #ゲーム制作
個人開発している方と繋がりたい!!
💻
本職はITエンジニアですが、個人ではシマエナガを主人公にしたゲーム開発をしています!
🎮
シマエナガLOVE!(・▴・)
#個人開発 #個人開発者と繋がりたい #アプリ開発者と繋がりたい #ゲーム開発者と繋がりたい
Tokusaに新しい作品が登録されました🎉
『一人でガード VR / Solo Tower Defense VR』(開発:なごみさん @nagoling)
ユニットを配置するのではなく、自分が最前線に立って敵を撃ち、ゲートを守るPCVRタワーディフェンス。2つのレーンをワープで切り替え、Waveごとに強化カードで強くなっていきます🔫
10/30 Steam発売予定。ウィッシュリストはこちら👇
Tokusa:tokusa.app/projects/fc66b962…
#ゲーム制作 #インディーゲーム #Steam #VRゲーム #タワーディフェンス
Steamの実績(Achievements)、
設計次第でプレイ時間が伸びる。
実績設計のポイントをまとめた。
【実績がある効果】
・クリア後もプレイし続けるモチベーションになる
・「実績コンプ」ユーザーが口コミを書いてくれやすい
・稀少実績はコミュニティで話題になる
【良い実績設計の原則】
・誰でも取れる基本実績(チュートリアル完了など)
・やりこみ実績(100回プレイ、全エリアクリア)
・発見系実績(隠しエリア到達、秘密のコマンド入力)
・ユーモア実績(10回死ぬ、5分で全クリ)
【Steamworksでの実装(C#)】
using Steamworks;
// 実績のアンロック
SteamUserStats.SetAchievement("ACH_WIN_ONE_GAME");
SteamUserStats.StoreStats();
【注意点】
・実績は公開後に削除できない(追加のみ可)
・APIキーは変更不可(名称は変えられる)
・テスト時は実績リセットツールで確認する
実績の数は30〜50が標準的。
少なすぎるとやりこみ感が出ない。
#個人開発 #ゲーム制作
Unityで「光の当たり方が不自然」を解決する
Reflection ProbeとBaked GI、
使っていない人はかなり損をしている。
【Reflection Probeとは】
・環境の反射光を360度キャプチャするコンポーネント
・置くだけで光沢のある床や金属が自然になる
・Static / Dynamic / Custom の3種類
【Baked GIとは】
・Global Illumination(大域照明)を事前計算する機能
・間接光(壁や床に跳ね返った光)を静的に焼き込む
・リアルタイムGIより負荷が低い
【セットアップの流れ】
1. 静的オブジェクトに Static チェックを入れる
2. Window > Rendering > Lighting を開く
3. Lightmap Settings を設定してGenerate Lightingを実行
4. Reflection ProbeをReflectionがほしい場所に配置
【よくある問題】
・ライトマップが暗い → Lightmap Exposureを調整
・シームレスでない → Lightmap Sizeを増やす
・パフォーマンスを見てBaked vs Realtime を選択
「光の質」は直接プレイ感に影響する。
設定を一度やるだけで全体の雰囲気が変わる。
#個人開発 #ゲーム制作
とむ@シマエナガゲームエンジニア retweeted
「コードはAIが見てくれる。でも、遊んだ感想は人からしかもらえない」の一行で立ち位置が決まっとる。バグ報告は再現手順と期待する挙動のテンプレ、感想は辛口歓迎〜やさしめの温度を頼む側が先に選ぶ。書く側が遠慮の量を探らんで済む設計や。名前の砥草も互いを磨くやすりの意味。ええ場やわ
|遊ぶ人向け
ゲームを作っていなくても、Tokusaに役割があります。
リリース前の作品を触って、「ここで詰まった」を伝える。
開発者に届き、役に立てば評価が返ってくる。
テストプレイが好きな方、新作を早く触りたい方。招待不要になりました。
tokusa.app
#個人開発 #ゲーム制作 #インディーゲーム
とむ@シマエナガゲームエンジニア retweeted
詰めるたびに、手紙が届きます。
「きょうの おべんとう さいこう。また つくってね」
5日つくると、1週間の思い出になります。
ぴったり詰める、お弁当パズルです。
『おかずの居場所』
App Store apps.apple.com/jp/app/id6809…
Google Play play.google.com/store/apps/d…
#お弁当パズル #パズルゲーム
|遊ぶ人向け
ゲームを作っていなくても、Tokusaに役割があります。
リリース前の作品を触って、「ここで詰まった」を伝える。
開発者に届き、役に立てば評価が返ってくる。
テストプレイが好きな方、新作を早く触りたい方。招待不要になりました。
tokusa.app
#個人開発 #ゲーム制作 #インディーゲーム
Unityでの開発中、
何度も繰り返す手作業をEditorスクリプトで
メニューに追加すると効率が上がる。
【MenuItemとは】
・UnityのメニューバーにカスタムメニューをAddできる
・Editorフォルダに置いたスクリプトのみ有効
・ショートカットキーも設定可能
【基本実装】
using UnityEditor;
using UnityEngine;
public class DevTools {
[MenuItem("DevTools/Clear PlayerPrefs")]
static void ClearPlayerPrefs() {
PlayerPrefs.DeleteAll();
Debug.Log("PlayerPrefs cleared.");
}
[MenuItem("DevTools/Reset Scene %r")] // Ctrl+R
static void ResetScene() {
var scene = EditorSceneManager.GetActiveScene();
EditorSceneManager.LoadScene(scene.name);
}
}
【よく使うメニューの例】
・PlayerPrefsクリア
・現在のシーンのリロード
・テスト用データのセットアップ
・スクリーンショット撮影
・選択Prefabの一括設定変更
【注意点】
・Editorフォルダ外に置いても動かない
・ビルドには含まれないので安心して追加できる
自分だけのツールメニューを作ると
毎日の開発の小さなストレスが消える。
#個人開発 #ゲーム制作
🎮ゲームはこちら
・iOS
apps.apple.com/us/app/%E3%82…
・Android
play.google.com/store/apps/d…
とむ@シマエナガゲームエンジニア retweeted
一人でも、チームの品質を実現できる。作りかけの作品に、遠慮のない感想が届く場所。 コードはAIが見てくれる。遊んだ感想は、人からしか届かない。個人開発の作品を…
【新着アプリ】Tokusa(トクサ) | 個人開発のテストプレイヤー募集とフィードバック by @creativetomred
tsukutta.app/apps/0da31b4d-4…
#個人開発 #Tsukutta
UnityのCoroutineで、
WaitForSeconds や WaitUntil では
対応しきれない待機処理が出てくることがある。
CustomYieldInstructionを使えば
自分だけの「待機条件」を作れる。
【CustomYieldInstructionとは】
・独自の yield return 待機条件を定義できる
・keepWaiting プロパティが false になるまで待機
・Coroutine内でそのままyield returnできる
【基本実装(アニメーション終了待ち)】
public class WaitForAnimation : CustomYieldInstruction {
private Animator _animator;
private string _stateName;
public WaitForAnimation(Animator anim, string state) {
_animator = anim;
_stateName = state;
}
public override bool keepWaiting {
get {
var info = _animator.GetCurrentAnimatorStateInfo(0);
return !info.IsName(_stateName) || info.normalizedTime < 1f;
}
}
}
// 使い方
yield return new WaitForAnimation(animator, "AttackEnd");
【よく使うユースケース】
・アニメーション終了待ち
・特定のゲーム状態になるまで待機
・外部レスポンスの簡易的な待機
処理の意図がコードから読み取れるようになる。
#個人開発 #ゲーム制作
🎮『フラッシュ言葉!!』はこちら!
【iOS】
apps.apple.com/us/app/%E3%83…
【Android】
play.google.com/store/apps/d…
Tokusaの温度の仕組み
感想って、「どこまで言っていいか」で手が止まりますよね。
Tokusaでは依頼する側が先に宣言します。辛口歓迎 / 率直に / やさしめ。
「厳しく言ってほしい」と本人が言っている作品には、遠慮なく書ける。
オープンβになったので、登録だけで試せます。
tokusa.app
#個人開発 #ゲーム制作 #インディーゲーム
10月末、Steamでも「ハロウィンセール」がある。
季節イベントをゲームに入れると
期間限定の話題作りになる。
【季節イベントをゲームに入れるメリット】
・Steamのハロウィンタグで発見されやすくなる
・「アップデートした」という投稿ネタになる
・古いユーザーが戻ってくるきっかけになる
【最小限の実装で済む季節コンテンツ】
・タイトル画面の背景・BGMを差し替える
・キャラクターにコスチュームを追加(追加購入 or 無料)
・限定アイテムを短期間だけ解放する
【実装のポイント(Unity)】
// 日付に応じて演出を切り替える
if (DateTime.Now.Month == 10 && DateTime.Now.Day >= 25) {
EnableHalloweenMode();
}
【注意点】
・期間が終わったら必ず元に戻す(ハードコードに注意)
・大きな実装は避ける(バグのリスクが高い)
・Steamのイベントカレンダーで開催時期を確認する
季節イベントは「ちょっとした手間」で
ゲームが生きていることをアピールできる施策。
#個人開発 #ゲーム制作














