Produkcja gier

Pytania i odpowiedzi dotyczące profesjonalnych i niezależnych twórców gier


1
Twierdzenie o rozdzielaniu osi za pomocą wielu wielokątów?
Próbuję zaimplementować twierdzenie o osi oddzielającej w języku C #. Mam funkcję, która może obliczyć minimalny wektor translacji między dwoma wielokątami. Nie mogę jednak stworzyć funkcji, która oblicza minimalny wektor translacji między jednym wielokątem a wieloma innymi wielokątami. Szczerze mówiąc, pracuję nad tym od miesięcy i nie jestem bliżej rozwiązania …


1
Jak mogę „przykleić” obiekty do stolików w Skyrim i nadal pozwolić, aby te obiekty były dostępne dla graczy?
Próbuję umieścić niestatyczną pulę ( RuinsPot01) na table ( RuinsAltar) za pomocą symulacji Havoka. Stawiam pulę nieco ponad stołem i włączam Havoka. Pula spada, ale unosi się nieco nad stołem. Jeśli odwrócę Havoka i naciśnie Fgo, zostanie on wyrównany poprawnie ze stołem, ale jak tylko włączę Havok Simulation, podskakuje lekko …

3
Spraw, by szybkie rzeczy wyglądały powoli (Box2D)
Pracuję nad grą, w której kontrolujesz trebusz, aby rzucać piłki przeciwnikowi. To jak gra o nazwie „Medieval Siege”. Kiedy trebusz macha ręką, gracz musi wykorzystać najlepszy moment, aby nacisnąć przycisk i puścić piłkę. Następnie piłka będzie latać pod kątem stycznym. Mój problem polega obecnie na tym, że ramię trebusza kołysze …

2
Jak przyciągnąć modderów do swojej gry?
Tworzę grę, ale ponieważ pracuję nad nią sam, ilość treści, które mogę stworzyć, jest bardzo ograniczona. Z tego powodu chcę, aby moja gra została zmodyfikowana, w tym celu planuję stworzyć kompletny interfejs API modowania, który byłby ujawniony dla skryptów lua. Chciałbym również tworzyć samouczki, aby zacząć od ludzi. A „Oryginalna” …

1
Jak obliczyć wektory styczne i bitowe
Mam teksturę załadowaną w pliku Three.js, a następnie przekazaną do shaderów. W module cieniującym wierzchołki obliczam wartość normalną i zapisuję w zmiennej wektor UV. <script id="vertexShader" type="x-shader/x-vertex"> varying vec3 N,P; varying vec2 UV; void main() { gl_Position= projectionMatrix * modelViewMatrix * vec4(position,1.0); P= position; N= normalMatrix * vec3(normal); UV= uv; …

1
Lekkie wolumeny rozmnażania: anizotropowe filtrowanie danych objętościowych
Wdrożyłem algorytm Cascaded Light Propagation Volumes (brak pośredniego cieniowania) dla rozproszonego globalnego oświetlenia w czasie rzeczywistym, szczegółowo tu i tutaj . Działa dobrze, ale wciąż próbuję naprawić jeden artefakt. Krótkie podsumowanie Możesz to pominąć, jeśli wiesz już, jak działa algorytm. Algorytm działa poprzez przechowywanie informacji o oświetleniu w postaci harmonicznych …

2
Coroutines in series
Jak mógłbym zacząć układać serię wywołań Coroutine, które powinny być wykonywane jeden po drugim? Próbowałem uzyskać efekt migającego koloru, zapętlający serię kolorowych lerpsów w coroutine, ale to nie działa.
9 unity 

5
Jak skalować piksele bez rozmycia w GM Studio?
Tworzę grę w Game Maker Studio, która wykorzystuje piksele. Kiedy uruchamiam grę, wszystkie skalowane tekstury są naprawdę rozmyte. (Nie zdarza się to małym). Na przykład ten obraz renderuje się w grze w ten sposób: Czy istnieje możliwość zmiany rozmiaru małych pikseli na duże zamiast rozmytych ?

2
Jak wybrać współczynnik skalowania świata gier 3D?
Tworzę prototyp gry 3D dla czołgów z symulacją fizyki, używam C ++. Jedną z decyzji, które muszę podjąć, jest skala świata gry w stosunku do rzeczywistości. Na przykład, mógłbym rozważyć 1 jednostkę miary w grze, która w rzeczywistości odpowiada 1 metrowi. Jest to intuicyjne, ale wydaje mi się, że czegoś …

3
Przesuwne lusterka obrotowe
Obracam swoją postać gry, aby obserwować cel, używając następującego kodu: transform.rotation = Quaternion.Slerp(startQuaternion, lookQuaternion, turningNormalizer*turningSpeed/10f) startQuaternion to bieżąca rotacja postaci, gdy zostanie podany nowy cel. lookQuaternion to kierunek, w którym postać powinna patrzeć i jest ustawiony następująco: destinationVector = currentWaypoint.transform.position - transform.position; lookQuaternion = Quaternion.LookRotation(destinationVector, Vector3.up); TurningNormalizer jest tylko Time.deltaTimezwiększany …

2
Ochrona wersji demonstracyjnej (i prawdziwej gry)
Za kilka miesięcy planuję zacząć pokazywać (mam nadzieję komercyjną) grę, nad którą pracuję publicznie (internet). Chodzi o to, że oprócz zrzutów ekranu i zwiastuna (powiedzmy funkcji), w jaki sposób właściwie zrobić demo, które można chronić? Pozwól, że ci wyjaśnię. Ta gra jest swego rodzaju wieloplatformową grą RPG. W tej chwili …

2
Budowanie danych sąsiadujących trójkątów
Biorąc pod uwagę listę indeksów trójkątów, jak dokładnie można przekonwertować ją na listę indeksów z przyleganiem modułu cieniującego geometrię? Zauważ, że ściśle mówimy tutaj o indeksach - wierzchołki są obecne, ale skupimy się wyłącznie na indeksach, ponieważ możemy ich użyć do dopasowania zduplikowanych wierzchołków bez konieczności przechodzenia do porównań zmiennoprzecinkowych …

1
Jak korzystać z nowoczesnego OpenGL do gier 2D?
Znalazłem mnóstwo „nowoczesnych” samouczków OpenGL (3.0+) dla 3D, ale nie znalazłem prawie nic, gdy szukałem informacji o tym, jak używać go do tworzenia gier 2D. Jak rozpocząć korzystanie z OpenGL dla gier 2D? W szczególności jestem zainteresowany uzyskaniem odpowiedzi na następujące tematy: Jak skonfigurować różne matryce do projekcji ortograficznej? Czy …
9 opengl  2d 

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.