Oyun Geliştirme

Profesyonel ve bağımsız oyun geliştiricileri için soru cevap

2
2D Yağmur Oluşturma (ve Akışkanlar Dinamiği)
Bir maçta hava koşullarını deniyorum ve Starbound'un yağmuru işleme şeklinden çok etkilendim. Temel olarak, yağmur yere çarptığında ya yatay olarak dağılır (ve yer tarafından emilir) ya da su yığınları oluşturur (yağmur damlaları yerdeki bir deliğin içine indiğinde). Bu video bunu açıkça gösteriyor: http://imgur.com/gallery/CKCGKbG Yağmur yağmasını nasıl yapacağımı ve yere çarptığını …

2
Otomatik olarak oluşturulan komut dosyasını nasıl özelleştiririm?
Unity düzenleyicisi ile bir komut dosyası oluşturduğunuzda, önceden biçimlendirilmiş bazı kodlara sahip bir komut dosyası oluşturur. using System.Collections; using System.Collections.Generic; using UnityEngine; public class GenericClass : MonoBehaviour { // Use this for initialization void Start () { } // Update is called once per frame void Update () { } …
11 unity 

2
Bir oyun nesnesinin bileşeninin yok edilip edilemeyeceğini kontrol edin
Unity'de bir oyun geliştirirken, [RequireComponent(typeof(%ComponentType%))]bileşenlerin tüm bağımlılıkların karşılanmasını sağlamak için liberal bir şekilde kullanıyorum . Şimdi çeşitli kullanıcı arayüzü nesnelerini vurgulayan bir eğitim sistemi uyguluyorum. Vurgulamayı yapmak için GameObject, sahnede bir referans alıyorum , daha sonra Instantiate () ile klonladım ve sonra görüntüleme için gerekli olmayan tüm bileşenleri özyinelemeli olarak …
11 unity  c# 

2
Oyunlarda yapısal analiz nasıl yapılır (örneğin: köprü inşası, Dig veya Die ve 3D)?
Anladığım kadarıyla, tipik bir etkileşimli kafes sistemi, her bileşen tüm sistemi etkilediğinden önemli hesaplamalara ihtiyaç duyacaktır. Bence simülasyonda doğruluk maliyetiyle belirli sayıda yinelemeyi keyfi olarak durdurabilirsiniz, ancak bu oyunların kullandığı yaklaşımın bu olup olmadığını bilmiyorum (köprü kurma oyunları bir kafes sistem örneğidir). Öte yandan, Dig veya Die gibi oyunlar, torku …

2
Son git işleminden bu yana bir sahnede yapılan değişiklikleri görsel olarak nasıl görebilirim
Bir sahnede (.unity dosyası) yapılan değişiklikleri gitmeye başlamadan önce görmek istiyorum. Birkaç GIT / Unity çözümüne baktım, ancak hepsi değişiklikleri birleştirmek için yapılmış ve son sürümle bir fark göstermek için değil. Sahne dosyaları ile ilgili sorun, diğer varlıklara işaret eden GUID'leri kullanmaları ve bir sahne dosyası için bir fark açtığımda …

2
Tuşa basmanın başlangıcındaki gecikmeyi kaldırma
Basit bir oyun yapıyorum ve karşılaştığım sorunlardan biri sürekli bir tuşa basarken can sıkıcı bir gecikme. Temel olarak, örneğin (çok uzun bir süre) tuşuna bastığımda, Upnesnem 1 birim yukarı hareket edecek, hareket etmeyecek (yaklaşık 1 saniye) ve sonra sürekli olarak 1 birim yukarı (herhangi bir gecikme olmadan) hareket edecek. Şu …
11 c++  sdl2  keyboard 

3
Ekranda nasıl doğal yağmur damlaları yapabilirim?
Ben yağmur efekti ekranda metaballs ve iz ile damla yapmaya çalışıyorum . Shadertoy bir ipucu bulmak ama nasıl uygulandığını anlamadım: https://www.shadertoy.com/view/ltffzl ne yazık ki birçok matematik hesaplamaları var ve ben bir gecikme üretir çünkü birlik içinde kullanamazsınız. açıkçası ben dokular kullanmalıyım ama nasıl iz etkisi olabilir ?! benim fikrim düşmek …

2
İstemci tarafı tahmini olan hareketli nesneler nasıl telafi edilir?
Star Control benzeri yakın dövüşleri destekleyen bir oyun sunucusu uyguluyorum . Böylece, hareket etmek için süper basit hız / hızlanma / nemlendirme fiziği ile uçan ve ateş eden gemileriniz var. Valve, Gafferon ve Gambetta'yı okudum ve müşteri tahmini için Gambetta algoritmasını uyguladım : İstemci tahmini, oyuncu gemisinde, sunucudan konumunu güncelleyerek …

2
Zaman uyumsuz işlemleri / coroutines nasıl beklenir?
C # 5 awaitanahtar kelimesine benzer Unity 5, bitirmek için coroutines ve asenkron işlemler için beklemek için genel / yeniden kullanılabilir bir yol arıyorum . Düşünebildiğim en basit yol şudur: public class SomeUtility { public bool IsDoingSomething { get; private set; } public IEnumerator DoSomethingAsync() { IsDoingSomething = true; yield …

5
Bağlamımda bu rasgele sayı üretimini nasıl geliştirebilirim?
Oyunumda ekranın üstünde bir kelime var, harfler yukarıdan aşağı yağmur yağıyor ve kullanıcının kelimeyi tamamlamak için harflere dokunması gerekiyor. Şu anda rastgele harfler üretiyorum (aslında rastgele sayılar ve sayılar harf dizisinin dizinidir. Örneğin: 0 = a, 1 = b) ama sorun, tüm harfleri tamamlamak için çok fazla zaman almasıdır. sözcüğü. …
11 random 


4
3D dünya için nasıl bir Navigasyon Izgarası oluşturulur?
Bu soruna bir çözüm bulmaya çalışıyorum. Ben 3D uzay için kareler şeklinde x, y katlanmış koordinatlara kilitlenmiş köşe ızgara biçiminde bir gezinti kafes oluşturmaya çalışıyorum. Ama bununla ilgili bir yol bulmaya çalışırken sorun yaşıyorum. Recast kütüphanesine bakmayı denedim. Oldukça sağlam bir yöntem, ancak görünüşe göre daha büyük haritalar ve açık …
11 c++  tiles  navmesh 

2
2D “aşırı duygusal” / “yapışkan” ayırma efektini nasıl oluşturabilirim?
İki animasyonun zamanla ayrıldığı ancak (bir süreliğine) uzayan ve sonunda kırılan bir şeyle bağlandığı bu animasyona benzer bir efekt oluşturmak istiyorum . Gibi bir pizza peyniri , ama özellikle 2D. Swift ve SpriteKit kullanıyorum. Bu muhtemelen anahtar kare bezier yolu animasyonları içerir düşünüyorum, ama emin değilim. Bu etkiyi nasıl elde …
11 animation 

2
Unity'de BillboardRenderer nasıl kullanılır?
Sürüm 5'ten beri (?) Unity'nin yeni bir bileşen türü vardır BillboardRenderer. Ne yazık ki belgeler oldukça zayıf. Müfettişe "Bileşen Ekle -> Çeşitli -> Billboard Oluşturucu" tıklanarak eklenebilir, ancak görünüşe göre bir Billboard Assetşey yapmak için a gerekir. Unity arayüzünden bir tane oluşturmanın bir yolu yok gibi görünüyor. BillboardAsset'in eşit derecede …
11 unity 

2
SDL ile delta zamanı nasıl hesaplanır?
SDL_GetPerformanceCounter ve SDL_GetPerformanceFrequency adlı iki işlevle delta süresini hesaplayabileceğinizi duydum. Tamamen nasıl çalıştıklarından emin değilim, ancak SDL_GetTicks () kullanmaya biraz benzediğini duydum Uint64 NOW, LAST; double deltaTime = 0; while (somebool) { LAST = SDL_GetPerformanceCounter(); NOW = SDL_GetPerformanceCounter(); LAST = NOW; deltaTime = (NOW - LAST) / (double)SDL_GetPerformanceFrequency(); /**Rendering**/ } …
11 c++  algorithm  sdl 

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.