Sorum şu:
Küresel bağlam verileri nasıl saklanır, yani. varlık bileşen sistemindeki dünya veri bilgileri, geçerli dünya saati, vb.?
C ++ 'da bir Cüce Kalesi tarzı açık uçlu dünya simülasyon oyunu oluşturmaya çalışmayı düşünüyorum. Sadece eğlence için bir varlık bileşeni tarzı oyun motoru oluşturdum ve şu anda istediğim tüm özelliklerde nasıl çalışacağımı anlamaya çalışıyorum. Standart oyun oynamaya (renderleme, fizik, tüzel kişiye özgü bileşen verileri, vb.) Ek olarak, tüm ilgili sistemlerin erişebileceği bazı küresel bağlamsal verilere sahip olmak istiyorum (yani, şu anda hangi yıl olduğu gibi dünya verileri) , küresel ısınmanın gerçekleşip gerçekleşmediği, Bir dünyayı simüle etmekle ilgili her türlü şey). Başlangıçta bir "dünya" bileşeni yapmayı düşündüm, ancak birçok farklı sistemin bu mantıksal "küresel" verilere erişmesi gerekiyorsa bu anlamsız ve zor görünüyor.
Bir "dünya" bileşenine sahip olmak anlamlı mı yoksa bu verileri başka bir şekilde mi saklamalıyım?
Ayrıca, bu verileri basitçe küresel hale getirmeyi ve böylece kullanmak isteyen herhangi bir sisteme erişim sağlamayı düşündüm; genel olarak varlık bileşeni ilkelerinin ihlali gibi görünüyor ve belki de başka nedenlerle dağınık, ama gerçekten işe yarayabileceğini düşündüm.
Düşündüğüm bir diğer şey, ilgili dünya bağlamındaki verileri doğrudan doğrudan sistemlerin içine yerleştirmek olacaktır. Örneğin, AgeSystem
bir getsWeakerAsTimePasses
bileşeni olan ya da olmayan tüm varlıklara "yaşlanmış" olsaydım , belki de bu sistem dünya için ilgili zaman verilerini doğrudan zamanın geçişini hesaplamak için kullanacağı üye verileri olarak depolayabilirdi. Bu üçüncü seçenek benim en sevdiğim, ama beyin fırtınasında başıma gelen bir şeydi.
Birisi tavsiye edebilir mi?