Neden platformlar arası motorlarda oluşturulan oyunlar bazen Windows'a özgü?


99

Bir motor Windows, OS X ve Linux'u destekliyorsa, neden bazen bu motorları kullanan Space Hulk: Deathwing gibi oyunlar görüyoruz ?


25
Çapraz platform inşa edilebileceği anlamına gelir, ek çaba gerektirmediği anlamına gelmez.
marsh

Bunun basit nedeni, bu tür oyunların büyük çoğunluğunun bilgisayarda olmasıdır.
Fattie

Yanıtlar:


150

Teknik Sebepler:

  • Spesifik olarak oyun platformu : Bazı geliştiriciler oyunlarını yaparken bazen platforma özgü fonksiyonlara güvenebilirler. Oyun motoru oyunu birden fazla platform için oluşturabilse de, oyuna özgü olmayan kod, diğer platformlarda bulunmayan veya oyunun zor bir bölümünü yeniden düzenlemeyi gerektiren Windows'a özel bir çağrı yapabilir (Lisanslama hizmetleri, Dosya Tasarruf sistemleri vb.)
  • Yeterli Makine Yokluğu : Uzun süredir, çoğu Apple bilgisayarı çoğu oyunu çalıştırmak için yeterli grafik gücüne sahip değildi. Öyleyse neden kullanıcıların büyük olasılıkla sadece kötü bir deneyime sahip olacağı bir yere çıkalım? Bu daha iyi tümleşik grafikler sayesinde yavaşça değişiyor, ancak yine de bazılarının yalnızca Windows'a gitmesinin bir nedeni olabilir.
  • Eklenti / Kütüphane uyumluluğu : Oyun geliştiricileri, geliştirmeyi hızlandırmak veya endüstri standardı / onaylanmış kodu (SSL, Serileştirme kütüphaneleri vb.) Kullanmak için 3. taraf kütüphaneleri kullanabilir. Bunlar X platformunu desteklemiyorsa, oyun büyük olasılıkla güvenilir bir şekilde çalışmayacaktır, bu nedenle dışlanırlar.
  • Artan KG : Oyun geliştirme sırasında, hiçbir hata olmamasını ve oyunun performans standartlarını karşılamasını sağlayan küçük bir alt bölüm var. Bir platform eklediğinizde, oyun aslında iki kez test edilmelidir! Oyunun genel kısımları yalnız bırakılabilir, ancak piyasaya sürülmeden önce yapılacak çok daha fazla test var. Bu aynı zamanda sadece gereken ek süre ile değil, aynı zamanda platforma (Apple, Xbox, PlayStation, Telefonlar, vb.) Bağlı olarak özel donanımlarla da maliyetin artmasına neden olabilir.
  • Artan Destek : Oyun yayınlandıkça böcekleri olacak (bazı oyunların diğerlerinden daha fazla). Daha fazla platform ekledikçe, geliştiricinin yapması gereken sürüm sonrası destek miktarı artar. Platforma özgü hataların, kırılan platform için onu sabitleyecek şekilde düzeltilmesi ve etkilenmeyen platformları etkilememesi gerekir. Bir platform değişirse, örneğin, Windows 7'den 8'e veya bir OSX yinelemesinden sonra, yeni sürümde herhangi bir hata bulunmadığından emin olmak için bir miktar Kalite Güvencesi olması gerekecektir. Ve eğer varsa, bu eski sürümle birlikte desteklenmesi gereken başka bir platformdur. Bu, özellikle oyun başladıktan sonra (oyun çok para kazanmıyordu), piyasaya sürüldükten 3-6 ay sonra maliyet üzerinde büyük bir etkiye sahip olabilir.

Teknik Olmayan Sebepler:

  • Yayıncı Anlaşması : Bazı geliştiricilerin, platformlarında özel olarak yayınlamaları için platform sahibi ile anlaşmaları olacaktır. Bu, konsollarda daha fazla olurken, PC platformları için de geçerli olabilir (örn. Windows).
  • Birinci taraf Geliştirici : Bazı geliştiriciler platform sahibine aittir ve oyunlarını belirli platformlarda yayınlamalarına izin verilmez. Muhtemelen PS4'te Halo veya Mac'te Forza görmeyeceksiniz.
  • Bir kitlenin yokluğu : Geliştiriciler, belirli platformlardaki tüketici eğilimleri hakkında, özellikle de çok fazla veriye sahip büyük yayıncılar varsa, çok sayıda istatistik elde eder. Hedef kitlelerinin% 90'ının Windows'ta olduğunu söyleyen bilgilere sahiplerse, potansiyel hataları azaltmak ve / veya pazarlama malzemelerini odaklanmış tutmak için diğer platformlarda yayın yapmaktan rahatsızlık duymayabilirler.
  • Platform Gereksinimlerini karşılamıyor : Apple's App Store gibi bazı platformların yayınlanması için izlenmesi gereken düzen ve tasarım konusunda katı gereksinimleri vardır. Bir oyun belirli bir dağıtım platformu için bu gereklilikleri karşılamıyorsa, tahmin edilen satışlar yeterli değilse, oyunu adapte etmek ve serbest bırakmak mühendislik zamanına değmeyebilir.
  • Bir platformda deneyim eksikliği : Eğer geliştirici yalnızca Windows ile çalışmışsa (ve diğer sistemlerde deneyimi olan / az sayıda insan varsa), geliştirme aşamasında sorunlara neden olabilecek küçük farklılıkları öğrenmek çok fazla olabilir. Linux / OSX inşasından sorumlu yeni personel almak için yeterli bütçe olmayabilir.
  • Pazarlama Maliyeti : eğer iki platform önemli ölçüde farklı kitlelere veya yaş gruplarına sahipse, biri için pazarlama materyali diğerine ulaşamayabilir, bu da pazarlama için daha fazla para harcanması gerektiği anlamına gelir. İki grubun farklı pazarlamaya ihtiyacı varsa, hepsi yeni hedef kitle göz önünde bulundurularak yeniden oluşturulmalıdır. Pazarlama, özellikle büyük sürümlerde çok pahalı olabilir, ne kadar fazla platform pazarlamaya ihtiyaç duyarsa, maliyet o kadar hızlı artar.

Eminim dahası vardır. Bunlar sadece kafamın en üstünde. Bu yardımcı olur umarım.


26
Bu iyi bir cevap ama bence başka bir önemli unsuru daha özlüyorsunuz: test maliyeti / KG. Çapraz platform motorları hiçbir zaman platform farklarını gizlemek için mükemmel bir iş çıkarmaz, bu nedenle tüm hedef platformlarda test etmek önemlidir. Yalnızca bir platformda görünen hatalar veya farklı platformlardaki farklı uygulamalarla ilgili önemli performans farklılıkları olabilir. Ayrıca, platformlar arası olması öngörülen işlevsellikte davranış farklılıkları olabilir. QA zamanının artması ve test cihazlarına ekstra donanım sağlamak için ihtiyacınız var. Bazı geliştiricilerin ekstra donanım ve yazılıma ihtiyacı olacaktır.
mattnewport

2
Tecrübe eksikliği bölümünden bahsettiğimi düşündüm .... ama ekleyebilirim :) her zaman daha iyi olsa da
user3797758 9:17

5
@Mattnewport ile burada maliyetin çok düşük olduğu konusunda hemfikir olacağım - geliştirmek, inşa etmek, test etmek, hata ayıklamak, durulamak, çoklu platformlar için tekrar etmek oldukça yoğun olabilir. Tek bir platform için çeşitli donanım konfigürasyonlarına karşı uygun şekilde test yapmak yeterince zor!
AC,

3
Ayrıca, "destek" bazen büyük ölçüde abartılı. Pek çok motor Windows'u “destekliyor”, ancak aslında Visual Studio ve Python ve Perl ve Cygwin ve Msys yazılımlarını ve aslında 5 adet MinGW ve gigabayt kütüphanesini kullanmanız gerekiyor.
AndreKR

2
“Geliştiricilerin belirli platformlardaki tüketici eğilimleri hakkında çok fazla istatistikleri var” - elbette, bunu teknik olarak destekleyecek platformların biraz kendi kendine süren bir kehanet olduğunu belirlemek için kullanmak.
VEYA Eşleştiricisi,

30

Çünkü kullanılabilir olmak, özgür ve anlık olmak anlamına gelmez.

Bir işletim sistemini desteklemek, en basit şekliyle, teknik destek sağlamak için bir platform daha demektir.

Ne kadar çok platform destekliyorsanız = Ne kadar destek sağlamanız gerekiyorsa platformlar = Desteğe daha fazla zaman harcamak = Oyununuzu geliştirmek için harcayabileceğiniz iş zamanını kaybetmek.

Bir platformu desteklemek, oyununuz bu hedef platformda yeterli oyuncu temeli çizebiliyorsa, platforma destek sağlamak için harcadığınız zamanı oluşturur.


2
Ayrıca, özellikle sosyal departmandaki pazar yeri gelişimi (App Store, Steam, Google play) ve platformda özel entegrasyonlar için daha fazla çalışma kaybedilmiştir. (arkadaşlar, paylaşım, kimlik doğrulaması)
CostelloNicho

18

Şimdiye kadar iyi cevaplar var, ama en alt satırda olalım.

Steam'in Haziran 2017 Donanım araştırmasına göre, örneklenen kullanıcıların% 96,24'ü Windows kullanıyordu. Windows kullanıcılarının% 87,37'si Windows 10 veya 7, 64 veya 32 bit'tir. OSX varyantları kullanıcıların% 2,95'ini ve Linux varyantlarının toplamı% 0,72'yi temsil etmektedir.

Vakit nakittir. Pazarınız niş olduğu ve özel olarak OSX veya Linux'u hedeflemediği sürece, özellikle oyun geliştiricileri genellikle ürün özelliklerini tamamlamak için zamanını uzattıklarından, pazarın <% 4'ünün zaman ayırmaya değer olmasından önce çok fazla oyun satmanız gerekir.


3
... ve bu aynı zamanda tüm kullanıcıların ortalama olarak oyunlar için karşılaştırılabilir para ödediğini varsayıyor. Android ile Windows Phone arasındaki istatistikleri hatırlıyorum; Android çok daha büyük bir cihaz paylaşımına sahipken, doğrudan (reklamsız) gelir hemen hemen aynıydı - ve her ikisi de iOS ile karşılaştırıldığında çok küçüktü. Bir oyun satıyorsanız, ne kadar insanın para ödemeye razı olduğunu bilmeniz gerekir. Piyasada nadiren oyun satın alan pazarın% 0,7'si için bir oyun yapmak tamamen açık sözlüdür: D Motor tamamen çok platformlu olsa bile buna değmezdi (farklı platformlarda tuhaf şeyler).
Luaan

1
@Luaan Humble Bundle’a göre, Linux’un geliri, Mac’in üç kat daha popüler olmasına rağmen, Mac’ten biraz az. Belki üst seviye Linux bilgisayarların aynı fiyattaki Mac'lerden daha iyi grafik kartlarına sahip olma eğiliminde oldukları gerçeğiyle açıklanabilir, çünkü bu makinelerin takası başka bir yerdedir.
stommestack

1
@JopV. Mütevazı paket, paket faktörü nedeniyle biraz zor. Sadece bir pakette oyun oynamayı önemsiyorsam, fazladan ödeme yapmaya meyilli değilim, çünkü fazladan oyun oynamıyorum (veya daha önce parasını ödediğim oyunları, bazen birden çok kez; evet, birazcık) çılgın: P). Linux'un oyun oynamak için nispeten yakın zamana kadar büyük ölçüde göz ardı edilmiş olmasından bir etki de olabilir, bu yüzden Mac veya Win bilgisayarlı bir kişi zaten bazı oyunlara sahip olabilir, Linux için ilk sürüm olabilir. Olabilir. Ayrıca Humble Mağazasında istatistikler var mı?
Luaan

2
@Luaan Ne zaman bir Humble Indie Bundle varsa, sayfanın altına yakın bir yerde, OS başına katkıda bulunan toplam ve ortalama para miktarını içeren bazı istatistikler var. Her pakette oldukça tutarlı kalıyorlar.
stommestack

14

Buradaki diğer cevaplar iyidir, ancak burada belirtilmeyen bir cevap.

Şu anda bu sorunu yaşıyorum - ekibim Windows / Mac için Unity'de bir oyun yayınlamak üzere. Oyunumuzun neden mobil olmadığına dair birçok soru aldık. 2 ana cevap var:

1) Telefonlar oyuna ayak uyduracak kadar güçlü değil. Belki sanatın kalitesini azaltabiliriz (modellerde daha az çokgen, dokularda daha az piksel vb.), Ama bu sadece çok ileri gider. Bir telefonun çalışması için yeterince optimize edilmiş olması için oyunun çoğunun yeniden yazılmış olması gerekir. Deneyin, ancak saniyede sadece 0,5 kare aldık. Açıkçası, oynanabilir değil.

2) Giriş. Tüm kullanıcı arayüzü, bir fare kullanılarak tasarlandı ve oyunun bir kısmı, herhangi bir zamanda farenin nerede olduğunu bilmeye dayanıyor. Oyun için farenin nerede olduğunu bilmeden çalışabilmesi için tüm giriş mekanizmamızın yeniden yazılması ve aynı işlevselliği elde etmek için ekrandaki çeşitli "dokunma" işlemlerini "fare" işlemlerine dönüştürmesi gerekir. User3797758'in cevaplarında da belirtildiği gibi, bu, "fare" ve "dokunma" girişlerinin aynı sisteme beslenebilmesi için bir şeylerin yeniden yazılmasını gerektirecek ve birinde bir hata diğerini etkilemeyecek ve bu hatanın düzeltilmesi ayrıca diğerini etkilemez. Bu, ekibimin şu anda hazır olduğundan daha fazla kaynak gerektiriyor.

Kullanıcı3797758'in cevabında da bahsedildiği gibi, Linux desteğimiz bile yok çünkü paketlerimizden biri Linux makinelerinde çöküyor, ancak Windows / Mac'te çalışıyor. Motor çapraz platform olduğu için onu kullanan her şey demek değildir.


1
Telefonum GTA Vice City'yi hiç sorun yaşamadan oynayabilir. Render motorunuz verimsiz! :)
Orbit'teki Hafiflik Yarışları

2
Her neyse, bu cevap, oyunları farklı donanım platformlarına / paradigmalarına taşımak ve PC'deki işletim sistemleri hakkında daha az şey hakkında
Orbit'te Lightness Races -

2
@LightnessRacesinOrbit, Birliktir ... Gerçekten de, oyunun merkezinde ve gerçekten verimsiz olan belirli bir etkiye sahibiz. Yazan adam gitti ve onu daha iyi hale getirecek bir yol bulamadık. Hayat böyle ...
Cody

3
@JopV. Umm, hayır. Geçmişi olan minik biraz daha karışık. Fakat burada tartışmanın bir anlamı yok. Sadece OpenGL'nin bir 3B oluşturma API'si olduğunu not edeceğim; DirectX bundan çok daha geniştir. Anlamsız tartışmaya katılmanız gerekiyorsa, en azından OpenGL ile Direct3D'yi karşılaştırın :) OpenGL, profesyonel 3B çalışmaları (özel IrisGL'yi "açmak") için tasarlanmıştır. OpenGL'yi o zaman başka hangi platform destekledi? "Platformlar arası platform geliştirmeyi engelleme" yoktu - Windows yerel OpenGL desteğine sahipti. OpenGL hiçbir zaman üst düzey profesyonel işler dışında bir şey için tasarlanmamıştı.
Luaan

2
phone gpus, termal ve boyut sınırlamalarına sahip oldukları için intel grafiklerinden bile daha az güçlü. Ayrıca birçok kişi 3,0 yani sadece birkaç kişi ilkel opengl için oyununuzu yeniden sürece uygulamasını kullanmak mümkün olacak opengl es desteklemeyen telefonlar 2.0 es var
Suici Doğa
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.