Розробка ігор

Питання та відповіді для професійних і незалежних розробників ігор

4
Уникайте подвійного стиснення ресурсів
Я використовую .pngs для моїх текстур і використовую віртуальну файлову систему у .zipфайлі для мого ігрового проекту. Це означає, що мої текстури стискаються та стискаються двічі. Які рішення цієї проблеми подвійного стиснення? Одне рішення, про яке я чув, - це використовувати .tgas для текстур, але це здається століттями назад, оскільки …

3
Як C # і UnityScript відрізняються в розвитку Unity? [зачинено]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб це було темою для обміну іграми Stack Exchange. Закрито 5 років тому . Окрім очевидних мовних відмінностей, чим UnityScript і C # відрізняються при розробці ігор в Unity3D? Чи помітна різниця у роботі? …

1
Як я можу програмно отримати доступ до одинарних спрайтів, коли режим Sprite є декількома?
Unity 4.3 нещодавно дає можливість розрізати спрайт-лист на кілька окремих спрайтів. Це корисно, оскільки тоді вам потрібен лише один основний спрайт-лист, але все-таки отримуєте посилання на окремі спрайти. Це робиться шляхом встановлення Sprite Mode на Multiple . Чи можуть усі спрайти, згенеровані з головного файлу, програмно доступні з редактора спрайтів …

3
Який найбільший "відносний" рівень я можу зробити за допомогою float?
Так само, як це було продемонстровано в таких іграх, як осада підземелля та KSP, достатньо великий рівень почне мати глюки через те, як працює плаваюча точка. Ви не можете додати 1e-20 до 1e20, не втрачаючи точності. Якщо я вирішу обмежувати розмір свого рівня, то як я обчислюю мінімальну швидкість, на …

4
Як реалізувати м'які краї краю з частинками
Моя гра створена за допомогою Phaser, але саме питання є моторно-агностичним. У моїй грі у мене є декілька середовищ, по суті полігональних областей, до яких персонажі гравців можуть переходити і впливати на них. Наприклад, лід, вогонь, отрута тощо "Графічним елементом цих областей є сама кольорова площа полігону, а також частинки …

2
Як мені поводитися з відсутніми ресурсами?
Ваша гра очікує завантаження певного активу, але він не знайдений. Як слід вирішувати ситуацію? Наприклад: Texture* grassTexture = LoadTexture("Grass.png"); // returns NULL; texture not found Mesh* car = LoadMesh("Car.obj"); // returns NULL; 3D mesh not found Користувач може бути випадково видалений, зіпсований або неправильно написаний під час розробки. Деякі можливі …

4
З чого складається точка зору "другої людини"?
Традиційні розповіді мають одну з трьох точок зору: Перша особа ( I fought the monster) Друга особа ( You fought the monster) Третя особа ( He/She/It fought the monster) Точки зору від першої та третьої особи дуже поширені у відеоіграх, але мені стало цікаво, якою буде точка зору другої людини. …

5
Чому сучасні ігри не мають додаткового життя? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 6 років тому . В кінці 80-х - на початку 90-х років більшість ігор мали додатковий життєвий механізм …

3
Як зробити стежки природного вигляду за допомогою A * на сітці?
Я читав це: http://theory.stanford.edu/~amitp/GameProgramming/Heuristics.html Але є деякі речі, які я не розумію, наприклад, у статті йдеться про те, щоб використовувати щось подібне для наведення маршруту з діагональним рухом: function heuristic(node) = dx = abs(node.x - goal.x) dy = abs(node.y - goal.y) return D * max(dx, dy) Я не знаю, як …

5
Які переваги обмеження кадрів в секунду? (Якщо якийсь)
Я працюю над простою грою в OpenGL, використовую SDL для ініціалізації дисплея та введення, і це з'являється з точки зору часу, у мене є два варіанти. Номер один, який просто спить для оптимальногоTimePerFrame - theTimeTakenToRender, коли оптимальнийTimePerFrame за секунди = 1 / theFramerateCap. (Я не зовсім впевнений, чи потрібно це, …
13 opengl  sdl  frame-rate  vsync 

2
Чи повинен я використовувати спрайети, через чи незважаючи на велику кількість зображень?
Я розвиваю 2D гру, і у мене багато спрайтів. Я використовував 3D-анімації та моделі, щоб перетворити їх у 2D, щоб надати їм такий вигляд "Fallout" або "Diablo". Це також простіше, ніж малювати вручну, lol. Мені вже довелося скоротити частоту кадрів до 15 кадрів в секунду, що було найнижчим, що я …

1
Облік хвиль при виконанні плоских відбитків
Я вивчав приклади Nvidia з SDK, зокрема проект Island11, і знайшов щось цікаве про фрагмент коду HLSL, який виправляє відображення вгору і вниз залежно від стану висоти хвилі. Природно, вивчивши короткий абзац коду: // calculating correction that shifts reflection up/down according to water wave Y position float4 projected_waveheight = mul(float4(input.positionWS.x,input.positionWS.y,input.positionWS.z,1),g_ModelViewProjectionMatrix); …

6
Чому я повинен заборонити торгувати реальними грошима в ММО?
Я незабаром вийду на публіку з грою на MMO, і зараз я в процесі написання умов використання, я очікую, що гравці дотримуватимуться (ні лай, ні спам, ні обман ... ви отримаєте бал). Моя гра дозволяє гравцям торгувати рідкісними предметами один з одним. Я помітив, що майже у всіх онлайн-іграх, які …

3
Відтворюючи цей вигляд з плоскими відтінками
Я триматиму це коротко. Як можна досягти ефекту, зображеного на зображенні нижче? Це можливо зробити в режимі реального часу? Це виглядає оманливо просто, але, мабуть, це не так. Чи є якісь ключові слова, які я можу шукати, щоб отримати більше інформації про програмування шейдерів для досягнення цього вигляду? Спасибі.

3
Об'єкт масивів чи масив об'єктів?
Я роблю сим-керуючу гру, щось в руслі американських американських магнетів. Я хочу знати, який найкращий спосіб структурувати свої світові об’єкти - це максимізувати продуктивність. Скажімо, у мене в грі 5000 людей, які я міг би: Створіть об’єкт і зберігайте їх у масиві; class person() { this.x = 0; this.y = …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.