Situs ini mulai menjadi implementasi dasar.
Sebagian besar di atas terinspirasi oleh ini artikel di T = Machine
Saya mulai menerapkan dasar yang diilhami oleh dua tautan di atas. Saya cukup yakin saya telah banyak menyimpang dari teori murni sistem komponen, dan pasti ada bug, tetapi mungkin terbukti bermanfaat jika Anda mencari beberapa contoh sederhana.
Bricle (C # / XNA)
Sekarang ini hanya memuat beberapa entitas dasar, menangani beberapa peristiwa, dll. Lokasi utama yang Anda cari adalah folder Engine.EntitySystem dan mungkin PlayScreen tempat entitas sebenarnya dibuat.
Membuat toko komponen berbasis tipe sederhana dan menyembunyikannya di belakang EntityManager yang umum relatif lurus ke depan.
Tantangan pertama yang saya temui adalah ketika sistem individual mungkin memerlukan beberapa tipe komponen (yaitu, komponen Fisik dan InputMoveable). Untuk menggunakan bahasa basis data relasional, saya harus menemukan cara untuk melakukan query JOIN. Untuk itu, saya membuat tipe koleksi lain untuk entitas yang dibangun dari kueri tipe komponen yang cocok - setiap koleksi entitas menghubungkan ke acara OnEntityCreate dan memeriksa apakah cocok. Masih ada beberapa bug di sana.
Tantangan kedua sebenarnya adalah membuat 'objek permainan' - Saya menyebutnya templat. Di sini saya mungkin tidak terlalu murni menurut spesifikasi T = Machine, tetapi sepertinya berhasil. Templat kelompokkan bersama komponen komponen dan memungkinkan komposisi entitas yang lebih mudah (yaitu, Bola Dapat Digambar dan Fisik).
Semoga itu bermanfaat - sistem entitas / komponen dapat menjadi tantangan untuk melewati beberapa rintangan awal.