Top Banner
Життєвий шлях ігрового двигуна nwEngine Богдан Горпинчук nwg studios, co-founder & core developer @iOhmed [email protected] skype: le.sung
18

Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Aug 17, 2015

Download

Business

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Життєвий шлях ігрового двигуна nwEngine

Богдан Горпинчук

nwg studios, co-founder & core developer

@[email protected]: le.sung

Page 2: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

З чого все почалось?

Page 3: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Wardensity RTS

Page 4: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

by mr.doobthree.js

Page 5: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Перші зміни

● Маніпуляції з геометріями об’єктів● Робота з об’єднанням об’єктів● Різні невеликі оптимізації● Зміни в роботі EffectComposer

Page 6: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Мінуси three.js

1. Продуктивність для складних сцен

2. Відсутність багатьох речей потрібних для

гри, особливо rts

Page 7: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

- next web engine

NWE vs. THREE

Page 8: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

емм... Demo-time

Page 9: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Основні кроки

● Повністю зрозуміти того, кого оперуєш

● Викинути зайве

● Структурувати та оптимізувати

● Додати та оновити основне

● Потрохи відроджувати функціонал

Page 10: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Що це дало Wardensity?

Page 11: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

● Зменшення використання RAM на порядок.● У 2-3 рази менше пам’яті GPU● Менше зайвих запитів до GPU● 2-4 кратне зростання FPS● Зменшення використання CPU● Відсутнє смикання картинки

Результати

Page 12: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Що ж по-факту нового?

Page 13: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

nwEngine vs three.js

● Pack & PackLoader — система асетів● Перероблено систему Image/Texture loading● Додано різні штуки як LayoutBufferGeometry● Просунутий Logger● Нова зручна система менеджменту шейдерів● Оновлено систему примітивів● GPUSelector - вибиралка об’єктів● Покращилась продуктивність WebGLRenderer

Page 14: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Є ще!

● Графічна частина двигуна відокремлена у NWE.gfx● Додано NWE.fw (framework)

Terrain object [static/dynamic/mixed]Group object [static/dynamic/flexible]

Effect object [WindMachine, SnowMachine]● Utils & tools

Convertor — .json to .binBuilder — lib builder [using ImEx.js], проект має > 120 файлівAtlasTextureBuilder

Page 15: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Ну добре, а далі?

Page 16: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Плани на ф’ючер

● Audio система для рушія● Більше можливостей фреймворка● Освітлення та тіні● Редактор та скріпти ?● Документація та білше прикладів (зараз 24)

Page 17: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

QA?

Page 18: Богдан Горпинчук “WebGL та шлях ігрового двигуна nwEngine.”

Богдан Горпинчук

nwg studios, co-founder & core developer

@[email protected]: le.sung