Ludu Arts Unity Developer Intern Case
| Bilgi | Değer |
|---|---|
| Unity Versiyonu | 6000.0.23f1 |
| Render Pipeline | URP |
| Case Süresi | 12 saat |
| Tamamlanma Oranı | %90 |
- Repository'yi klonlayın:
git clone https://github.com/Kyof0/Interaction-System.git- Unity Hub'da projeyi açın
Assets/[Interaction-System]/Scenes/TestScene.unitysahnesini açın- Play tuşuna basın
| Tuş | Aksiyon |
|---|---|
| WASD | Hareket |
| Mouse | Bakış yönü |
| E | Etkileşim |
| [Diğer] | [Açıklama] |
-
Door Test:
- Kapıya yaklaşın, "Interact [E]" mesajını görün
- E'ye basın, kapı açılsın
- Tekrar basın, kapı kapansın
-
Key + Locked Door Test:
- Kilitli kapıya yaklaşın,
- Anahtarı bulun ve toplayın
- Kilitli kapıya geri dönün, şimdi açılabilir olmalı
-
Switch Test:
- Switch'e yaklaşın ve aktive edin
- Bağlı nesnenin (kapı) tetiklendiğini görün
[Mimari diyagram veya açıklama]
Yok.
Neden bu yapıyı seçtim:
[Açıklama] Yok.
Alternatifler:
[Düşündüğünüz diğer yaklaşımlar ve neden seçmediniz] Yok.
Trade-off'lar:
[Bu yaklaşımın avantaj ve dezavantajları] Yok.
| Pattern | Kullanım Yeri | Neden |
|---|---|---|
| [Observer] | [Event system] | [Açıklama] |
| [State] | [Door states] | [Açıklama] |
| [vb.] |
| Kural | Uygulandı | Notlar |
|---|---|---|
| m_ prefix (private fields) | [x] / [ ] | |
| s_ prefix (private static) | [x] / [ ] | |
| k_ prefix (private const) | [x] / [ ] | |
| Region kullanımı | [x] / [ ] | |
| Region sırası doğru | [x] / [ ] | |
| XML documentation | [x] / [ ] | |
| Silent bypass yok | [x] / [ ] | |
| Explicit interface impl. | [x] / [ ] |
| Kural | Uygulandı | Örnekler |
|---|---|---|
| P_ prefix (Prefab) | [x] / [ ] | P_Door, P_Chest |
| M_ prefix (Material) | [x] / [ ] | M_Door_Wood |
| T_ prefix (Texture) | [x] / [ ] | |
| SO isimlendirme | [x] / [ ] |
| Kural | Uygulandı | Notlar |
|---|---|---|
| Transform (0,0,0) | [x] / [ ] | |
| Pivot bottom-center | [x] / [ ] | |
| Collider tercihi | [x] / [ ] | Box > Capsule > Mesh |
| Hierarchy yapısı | [x] / [ ] |
[Standartları uygularken zorlandığınız yerler]
-
/ [ ] Core Interaction System
- / [ ] IInteractable interface
- / [ ] InteractionDetector
- / [ ] Range kontrolü
-
/ [ ] Interaction Types
- / [ ] Instant
- / [ ] Hold
- / [ ] Toggle
-
/ [ ] Interactable Objects
- / [ ] Door (locked/unlocked)
- / [ ] Key Pickup
- / [ ] Switch/Lever
- / [ ] Chest/Container
-
/ [ ] UI Feedback
- / [ ] Interaction prompt
- / [ ] Dynamic text
- / [ ] Hold progress bar
- / [ ] Cannot interact feedback
-
/ [ ] Simple Inventory
- / [ ] Key toplama
- / [ ] UI listesi
- Animation entegrasyonu
- Sound effects
- Multiple keys / color-coded
- Interaction highlight
- Save/Load states
- Chained interactions
Assets/
├── InteractionSystem/
│ ├── Scripts/
│ │ └── Runtime/
│ │ ├── Core/
│ │ │ ├── BaseInteractable/
│ │ │ │ └── BaseInteractable.cs
│ │ │ │ └── HoldInteractable.cs
│ │ │ │ └── IInteractable.cs
│ │ │ │ └── InstantInteractable.cs
│ │ │ │ └── ToggleInteractable.cs
│ │ │ ├── Door.cs
│ │ │ ├── Key.cs
│ │ │ ├── Switch.cs
│ │ └── Player/
│ │ ├── PlayerInteract.cs
│ │ └── PlayerMovement.cs
│ ├── ScriptableObjects/
│ ├── Prefabs/
│ ├── Materials/
│ └── Scenes/
│ └── TestScene.unity
├── Docs/
│ ├── CSharp_Coding_Conventions.md
│ ├── Naming_Convention_Kilavuzu.md
│ └── Prefab_Asset_Kurallari.md
├── README.md
├── PROMPTS.md
└── .gitignore
| Bilgi | Değer |
|---|---|
| Ad Soyad | [Emre Aslan] |
| E-posta | [vemre@gmail.com] |
| [https://www.linkedin.com/in/vemre-aslan/] | |
| GitHub | [github.com/Kyof0] |
Bu proje Ludu Arts Unity Developer Intern Case için hazırlanmıştır.