Doom éternel
まだ誰も着手していません。
評価
- 難易度
- 5/5
- 見積もり時間
- 1週間以上
- 初心者へのやさしさ
- 10/100
調査の方向性
The issue contains Unity and C# snippets for player movement, enemies, weapons, levels, and effects, but names no repository files, tests, or specific change. First clarify the intended scope and acceptance criteria before identifying an entry point; completion cannot be determined from the current issue.
索引モデルが issue の本文から書いたものです。
説明
using UnityEngine;
public class Weapon : MonoBehaviour
{
public GameObject bulletPrefab;
public Transform firePoint;
void Update()
{
if (Input.GetButtonDown("Fire1"))
{
Shoot();
}
}
void Shoot()
{
Instantiate(bulletPrefab, firePoint.position, firePoint.rotation);
}
}
using UnityEngine;
public class EnemyController : MonoBehaviour
{
public float moveSpeed = 3f;
public Transform player;
void Update()
{
MoveTowardsPlayer();
}
void MoveTowardsPlayer()
{
Vector3 direction = (player.position - transform.position).normalized;
transform.position += direction * moveSpeed * Time.deltaTime;
}
}
using UnityEngine;
public class PlayerController : MonoBehaviour
{
public float moveSpeed = 5f;
public float jumpForce = 5f;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
void Update()
{
Move();
Jump();
}
void Move()
{
float moveHorizontal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);
rb.AddForce(movement * moveSpeed);
}
void Jump()
{
if (Input.GetButtonDown("Jump"))
{
rb.AddForce(Vector3.up * jumpForce, ForceMode.Impulse);
}
}
}
void Start()
{
rb = GetComponent();
}
void Update()
{
Move();
Jump();
}
void Move()
{
float moveHorizontal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);
rb.AddForce(movement * moveSpeed);
}
void Jump()
{
if (Input.GetButtonDown("Jump"))
{
rb.AddForce(Vector3.up * jumpForce, ForceMode.Impulse);
}
}
// Exemple en C# pour Unity
public class PlayerController : MonoBehaviour
{
public float moveSpeed = 5f;
public float jumpForce = 5f;
private Rigidbody rb;
void Start()
{
rb = GetComponent<Rigidbody>();
}
void Update()
{
Move();
Jump();
}
void Move()
{
float moveHorizontal = Input.GetAxis("Horizontal");
float moveVertical = Input.GetAxis("Vertical");
Vector3 movement = new Vector3(moveHorizontal, 0.0f, moveVertical);
rb.AddForce(movement * moveSpeed);
}
void Jump()
{
if (Input.GetButtonDown("Jump"))
{
rb.AddForce(Vector3.up * jumpForce, ForceMode.Impulse);
}
}
}
3. Créer des ennemis
csharp
Run
Copy code
public class EnemyController : MonoBehaviour
{
public float moveSpeed = 3f;
public Transform player;
void Update()
{
MoveTowardsPlayer();
}
void MoveTowardsPlayer()
{
Vector3 direction = (player.position - transform.position).normalized;
transform.position += direction * moveSpeed * Time.deltaTime;
}
}
4. Ajouter des armes
csharp
Run
Copy code
public class Weapon : MonoBehaviour
{
public GameObject bulletPrefab;
public Transform firePoint;
void Update()
{
if (Input.GetButtonDown("Fire1"))
{
Shoot();
}
}
void Shoot()
{
Instantiate(bulletPrefab, firePoint.position, firePoint.rotation);
}
}
5. Créer des niveaux
Utilise des outils de création de niveaux dans Unity ou Unreal pour concevoir des environnements.
Ajoute des éléments interactifs, des ennemis et des objets à collecter.
6. Ajouter des effets visuels et sonores
Intègre des effets de particules pour les explosions et les impacts.
Ajoute des sons pour les armes, les ennemis et l'environnement.
7. Tester et itérer
Teste régulièrement ton jeu pour corriger les bugs et améliorer le gameplay.
Conclusion
Ce n'est qu'un aperçu très basique de la création d'un jeu de tir à la première personne. Pour un projet complet, il te faudra approfondir chaque aspect, apprendre à utiliser des outils de modélisation 3D, de l'animation, de la conception sonore, et bien plus encore. Il existe de nombreux tutoriels en ligne pour t'aider à chaque étape du processus. Bonne chance dans ton projet de jeu !
Copy message
Scroll to bottom
Voilà
- 主要言語
- Python
- スター
- 18.3k
- フォーク
- 3k
- PR マージ指標
- 30日以内にマージされた PR はありません
コントリビューションガイド
このリポジトリのコントリビューションガイドは索引されていません
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
trekhleb/learn-python のほかの issue
-
Typo in Variable Name: "weapon.strip()" Should Be "fruit.strip()" in List Comprehensions Example オープン
難易度 1/5 1時間未満 初心者へのやさしさ 82/100
trekhleb/learn-python#105 · コメント 1 件 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 72/100
trekhleb/learn-python#104 · コメント 1 件 ·
-
Learning Python オープン
難易度 5/5 1週間以上 初心者へのやさしさ 10/100
trekhleb/learn-python#108 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 30/100
trekhleb/learn-python#107 · コメント 1 件 ·
-
難易度 3/5 1〜2日 初心者へのやさしさ 45/100
trekhleb/learn-python#106 ·
trekhleb/learn-python の issue をすべて見る
似ている issue
-
bug
難易度 2/5 1〜3時間 初心者へのやさしさ 75/100
xinnan-tech/xiaozhi-fde-talk#263 ·
-
rules
難易度 1/5 1時間未満 初心者へのやさしさ 90/100
-
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
huggingface/Repo2RLEnv#163 · コメント 1 件 ·
-
難易度 1/5 1時間未満 初心者へのやさしさ 95/100
huggingface/sentence-transformers#4074 ·
-
comp/dashboard invalid P3
難易度 2/5 1〜3時間 初心者へのやさしさ 70/100
NousResearch/hermes-agent#121143 ·