Play now

Показаны сообщения с ярлыком unity. Показать все сообщения
Показаны сообщения с ярлыком unity. Показать все сообщения

вторник, 9 февраля 2016 г.

Music Terrain. Unity Particle Madness !

Hello everyone!

Today is my Birthday, so I decided to post something interesting.

I want to show you music FX scene. This technology still in development, but already looks good. Especially with cool music. So enjoy!  

(Music: Martin Garrix - Virus )





вторник, 15 сентября 2015 г.

Advanced particle system for Unity

We have a small pause in games development.

Now we are working on Unity plugin for Visual Effects.

It's advanced particle system that we already used in Alco Invaders.

I think name will be "Hexagon Particles" or "Hexagon Lab" .

Some pictures:






And short video

On scene was near 80 fps. Reason of lags only in video capture :)

We hope to release plugin in few weeks. So follow us on twitter and be the first users ;)

среда, 26 августа 2015 г.

Blood On Hands. Ludum Dare 33.

Play our game for #LudumDare . Theme was "You are monster" .

This game not for fun. We want to show you in what mood we live in Ukraine last 2 years.

Game shows what can be the results of TV propaganda.

Immerse into war reality.

Who are you? You will find the answer in the end....

P.S

I think it has to be place for serious games. Not only jokes.
If you want something more fun - try our sci-fi game Alco Invaders.

Thanks !


воскресенье, 21 июня 2015 г.

Unity optimisation tips


My previous article was in russian. So this I decided to write in English. 

Maybe you have heard or even already played Alco Invaders on PC. 

But we also make Alco Invaders for mobiles. We tested it on wide range of devices:

-Kindle Fire 1,
-HTC One,
-Nexus 4, 
-iPhone 4S, 
-iPad mini 2, 
- Galaxy Tab 4 
- and even tablet Windows 8.1.

So on all this devices we tried to achieve 50-60 fps performance. And we did it! And on almost all devices graphic level is the same as in PC. Except Kindle Fire - it doesn't support bloom :)





When we only started to work on game - performance was horrible. 15-20 fps on Android. But we decided make good picture in any way. 




In my previous article I have wrote about core elements of optimisation. And this about polishing optimisation. Secret tricks, which can save 20-30 % of performance.

1. Never use .transform in circles

It was a great surprise, when I discovered this thing. But in Unity .transform = .GetComponent<Transform>().

Example is Bullet script 
https://gist.github.com/Oxygamer/20100d06e11a8494042d

And getting component cost much in circles. In my tests it save almost 12 % of performance. So, make variable of type Transform and assign it in the Awake() function.


2. Vector3.Distance() is expensive enough.

The reason - is Mathf.Sqrt() inside this function.

So if you can - better use predefined table of distances or calculate it not in Update().
I used such trick in my Hexagon particle system. 

If you have some kind of grid - calculate distances between all elements and write it to simple array float[].

It saves ~ 10 % performance.




3. Almost all physical is expensive.

Maybe it's obvious, but you can forget about physics of explosion, or bullets. Check all them and try not use much physical objects in one time.



4. Use delayed trash cleaning.

For this purpose better use .SetActive(false), store object to some list, and Destroy() it in pause or end of level. It depends of your game type.

5. Shaders - use VertexLit if you can.

Maybe it's not huge difference between VertexLit and Diffuse, but Specular cost much. The reason is per pixel light rendering in Diffuse/Specular shaders and per vertex in VertexLit.




6. Use Dictionary<key,value> for prefab storage.

It's useful when you searching object with some name or type.  For example you can use List<> for Editor, and then put all this prefabs to Dictionary<> on game start.

As example - Object Storage script

https://gist.github.com/Oxygamer/c93d958ae138aef607b2

P.S

Hope this tricks and techniques will be useful for you ! If you have some questions - write it in comments. I will help with gladness :)

3d artist searching !

Hi guys. We are launching Alco Invaders. It has in-game store with premium skins. So we searching for 3d-artists,who want sell skins here. We have statistic for all in game purchases Good feeling of humor is plus :)  #gamedev #unity

Привет всем! Мы запускаем Alco Invaders. Игра имеет свой магазин скинов. Мы ищем 3d дизайнеров, кто хочет  продавать свои скины в игре. Мы имеет статистику на все игровые покупки. 
Хорошее чувство юмора будет + !






понедельник, 25 мая 2015 г.

Wave from dynamic mesh in Unity

Hello Unity devs :)

Today I want to talk about dynamic mesh generation and moving it. In other words we will create mesh wave like water wave.

Example of work you can see at this gif:


Quality of gif not so cool, but in Unity it rus very smooth )


To do this you need only one script.

All  work I have explained  in script comments

https://gist.github.com/Oxygamer/7cf831fcb54493fd64d4

To use it:

1.  Create empty GameObject and attach this script to it.
2.  Create Plane ( I use it because it have MeshCollider)
3.  Assign this plane to "MeshObject" in our empty object with MeshWave script.
4.  Run!

You can assign different materials to this wave. Mesh use material from our plane object.

MeshWave script has a lot of wave parameters:


When you play with values- you get very funny results )
Like this for example:

http://i.gyazo.com/033d74b14f8a391aca8b8e238c11c510.mp4


And I also put demo unity asset, which you can simply import :)


Get Asset

четверг, 12 февраля 2015 г.

New craft system and redesign

Заканчиваем работу над новой системой крафта. Теперь коктейли создаются по рецептам, которые можно выбить с боссов или купить :) Всего будет 20-25 рецептов. 


   Также сделали редизайн окна прокачки.

  
  Теперь работаем над игровым магазином. Обновление должно появится на Desura в конце    февраля. 
  


вторник, 20 января 2015 г.

Winter Party


Наконец-то мы выпустили зимнее обновление Winter Party. Теперь стратегические возможности не менее важны, чем сам корабль. 

Появилось 2 новых вида туррели - огненная и ледяная. С их помощью вы можете заморозить или раскалить астероид, а потом подорвать его. Как результат получите огненный ад или ледяной снегопад. 

Мы также изменили эффекты всех коктейлей. Теперь они значительно полезней. А в следующем обновлении будет полностью новая система крафта, с необычными рецептами и возможностью самому создавать алкогольные напитки.

Полный список изменений можно прочитать тут 
А последнюю версию игры можете скачать тут бесплатно, и без смс :) . Играйте, ставте оценки, пишите комменты.

Также подписывайтесь на мой твиттер https://twitter.com/Oxygamer





вторник, 25 ноября 2014 г.

Alco Invaders is FREE


We made Alco Invaders FREE ! We want to show our game as many people as possible. Mix, drink, go to space !

Thanks to all , who took part in development . Making of this game takes more then 8 month of work. We made all,that planning in beginning, but we will not stop !

I started to love this game after such time. Making of all this was a great experience for me. I dream to make  this game more musical, more social. And I think it's all real tasks. If you know how to make game better - share with us. We will try to realize all yours wishes. If you want to be part of our team - also write to us, because we are thinking about next interesting projects.

 Advice for players: 
- Play with your favourite music on background
- Find secret powerfull cocktails ( exist 4 types now) 

- Press "C" for movie mode 

Get Alco Invaders for Free

Play this music when play game :)

понедельник, 10 ноября 2014 г.

Новости разработки. Волны частичек и мобильный интерфейс.

Решил рассказать, чем занимался последние недели и показать результаты. Начну с того,что наш с другом проект находится на финальной стадии, когда сделано все что планировалось изначально и даже больше. 

Сейчас все время уходит на улучшения внешнего вида (эффекты, фоны) и оптимизацию производительности. С внешним видом получилось очень даже хорошо. Частички, о которых я писал ранее удачно сочетаются с космосом и общей атмосферой  dicso-party. 




После этого мы выпустили обновление 1.66 для PC,Mac версии, которая доступна здесь . 
Вторым важным направлением стала мобильная разработка. Хоть собрать android/ios сборку не сложно на Unity, но самые большие измения пришлось сделать в интерфейсе и управлении. Если на PC хорошо работает сочетание мышка/клавиатура, то для touch screen нужен совсем другой подход. 

Сначала мы ничего не меняли, и процесс игры был похож на закликивание экрана планшета. Это было утомительно для новых игроков, и иногда приводило их в ярость (когда не успевали за скоростью игры) . В итоге решили сменить систему управления на более простую - автоматическая атака выбранной цели. Это позволило уменьшить колличество кликов раз в 10 и освободило внимание для более стратегического подхода и использования скиллов. 



Также мы изменили положение и внешний вид джойстика. Он стал более чувствительным и главное, не закрывает собой корабль игрока. 

В других разделах игры ( Cocktail Mixer и Upgrade Shop ) мы увеличили размер всех кнопочек и иконок. Перетаскивание ингридиентов для коктейля заменили простым нажатием по иконкам. 

Сейчас заново настраиваем баланс для мобильной версии, и скорее всего сделаем несколько уровней сложности. 

На этом этапе очень не хватает игроков для тестирования. Так как хочется, чтобы игру могли оценить свежим взглядом и заметить те вещи, к которым мы уже привыкли в процессе разработки. Размещать ее в маркет пока не будем - еще есть шансы найти издателя, которому игра прийдется по душе. 

Если кто хочет помочь в тестировании - пишите на почту oxygamer@gmail.com или в скайп Oxygame. Всем тестировщикам - ключи для PC/Mac версии и попадание в титры :) 

воскресенье, 19 октября 2014 г.

Симуляция волн на системе частиц Hexagon Lab

Испитываю HexagonLab для динамического фона в игре. 
Добавил поддержку нескольких источников волн (взрыва) - и получась такая движимая поверхность. Если интеграция в игру пройдет успешно - сделаю ассет :)
Может у кого-то еще идеи как использовать данную систему частиц- обращайтесь, поделюсь.


четверг, 16 октября 2014 г.

Unity: мобильная оптимизация на примере Alco Invaders


Две недели работал над портирование мобильной версии. Оптимизировал все что можно, и теперь игра работает на 40-60 fps на моем Kindle Fire.

Но даже со всеми улучшениями на Android сложно получить ту же картинку, что на скриншоте. Все дело в Image Effect , которые требуют Shader Model 2 (Bloom в моем случае). Даже на топовых Android девайсах этот эффект отключается при запуске игры. 

Намного лучше ситуация с iOS. При тестах на iPhone 5 и iPad mini все эффекты работали корректно, и графика выглядит на уровне PC. 

Теперь про оптимизацию производительности: 

- Cамым большим разочарованием стал iTweens. После 3 лет использования этой библиотеки оказалось,что она главный источник всех тормозов. И если на PC это не было явно заметно, то на планшете скорость падала в 1.5-2 раза. Особенно не советую использовать ее в циклах и Update. Поэтому от нее пришлось отказаться. 

Взамен написал свои функции плавного движения, используя  Mathf.Lerp(). Получился такой скрипт, который можно повесить на любой обьект http://pastebin.com/R7QUVmeu . Обращатся к нему через GetComponent<SmoothMove> ().SetTarget(Vector3) .

- Следующей простой оптимизацией стала замена всех new Vector3(), new Color() внутри циклов. Для этих целей лучше использовать глобальные переменные данных типов. Например как moveVector в коде выше. В результате не будут создаватся лишние новые обьекты по 60 раз в секунду.

- Тажке рекомендую отключить все динамические источники света ( у меня они были на лазерах :) Согласно документации Unity отрисовка (drawcall) происходит для каждого такого источника света. В итоге среднее колличество drawcall снизилось с 200 до 60, что было очень заметно на Android.

- Particles. Максимальное колличество частиц лучше ограничить 100-200 на один источник. А одновременное колличество источников частиц - не больше 10. Но это во многом зависит от того, как нагружает CPU все остальное в игровой сцене.


- Meshes. В результате тестирования оказалось, что мобильные устройства вполне справляются с 20 k полигонов. Конечно, чем меньше тем лучше, но и качество моделей от этого не должно сильно страдать. По возможности замените все мелкие 3d обьекты на 2d спрайты  (лазеры, ракеты и частички)



- Textures. Размер текстур я ограничил до 1024 px. Больше может потребоватся только для текстурных атласов. Если размер текстуры больше 1024 (например фона) то улучшения качества на мобильных практически не заметно. 
При этом размер инсталлера снижается значительно:  2 мб против 8 мб на каждую текстуру. По этим же причинам старайтесь использовать одни текстуры в разных местах (например один фон, но с разным цветом в материале)

- Управление. Отдельная тема- мобильное управление. Старайтесь всегда использовать Unity Remote, так как управление на touchscreen очень отличается от его симуляции мышкой. Это поможет избежать лишних багов и ускорит весь процесс портирования.

Больше по оптимизации можно прочитать в оффициальной документации:
 - Оптимизация графики
 - Оптимизация физики
 - Оптимизация скриптов

Другие способы оптимизации буду добавлять в статью со временем. 
Удачи в ваших разработках !

среда, 1 октября 2014 г.

Hexagon Lab Coub

Решил записать видео системы частиц, над которой работаю. Сейчас она называется "Hexagon Lab". 
Ее можно применить в очень разных играх или видео. Например, тот эффект волны, что на видео можно использовать для обьемного фона. Сейчас волна движется за камерой, но можно задать любые точки ( взрывы,порталы и т.д). Если кто-то хочет использовать такую штуку в играх - пишите, сделаю asset :)




воскресенье, 7 сентября 2014 г.

Новые боссы в игре

Сегодня закончил последнего босса из AlcoInvaders. Всего их 6, как и планет. Больше всего времени заняла система разрушения боссов. 
Каждый из них состоит из 3-5 частей, а при взрыве эти части распадаются на мелкие кусочки. Все они будут доступны в обновлении 1.3




суббота, 7 июня 2014 г.

Alco Invaders: cocktail bar

Рад показать всем новую фичу в моей игре. Поскольку игру называется Alco Invaders, то без алко коктейлей тут не обошлось. 

Специально для любителей алхимии и экспериментов добавлен коктейль бар. В нем полученные за прохождение ингредиенты можно смешать в полезный, постоянный бонус. 

Также есть возможность создать 4 секретных коктейля, под разные стили игры: Turtle, Butcher, Kamikadze,Rocket Master cocktails.





В ближайшее время игра может появится на Desura. Все желающие поиграть уже сейчас или сделать обзор пишите мне oxygamer@gmail.com