4.04.2018

Feelings about Unity after Flash

I'm Flash developer almost whole conscious life. Started with Macromedia Flash MX 6 around 15 years ago, I wanted to make cartoons and then I found potential for games. I tried to program with frames and `goto` but learned programming only years later. All my jobs was related to Flash and I'm working as mobile AIR developer now.

But epoch is gone. Everyone heard about Flash death (that slightly exaggerated on my opinion). When everyone already moved to other technologies such as JS and Unity, I'm only started this way. And today I want to share my feelings about moving to Unity 3D after years of developing with Flash and ActionScript.

Basics


First at all I can recommend to start from official manual which is structured really well and written easily and informative. Who knows may be it will abolish the need for further reading. Here my understandings of basics Unity concepts.

Project (that almost always are games) consist of Scenes. Each Scene represents independent 3d-space. Let think about Scenes like about separate stages (Flash IDE also have scenes concept but I never used it for development). Even 2d-games are exists in 3 dimensions – I hope you know how z-index works.

This 3d-space is container for GameObjects. Something like DisplayObjects in Flash. And each GameObject (GO) has Transform component/property – information about it position, rotation and scale.

Prefabs are something like stored GOs, presets. You can reuse prefabs with different ways. It one of basic tools of Unity and it better to learn about it in a chapter of manual.

Each GO can (and should) have components. Components are code that describes behaviour of GOs. Working in Unity, you will use many built-in components, as well as write your own. Working with components are main part of business in Unity.

Few more notices


Measure system. Don't forget that Unity (unlike Flash) uses units measure system. It could be a problem at first, but soon becomes natural.

CSharp. Despite the fact that Unity allows you to choose the programming language of a few, of course you need to use C# as only one language. Especially if you programmed on ActionScript 3.0 before. Mostly all projects (I will assume >99%) made in Unity are written on C#.

Rider. I like JetBrains IDEs. So highly recommend Rider instead of MonoDevelop as main code editor. It easy to integrate to Unity and much more comfortable to work with.

Conclusion


I'm using Unity hardly more than month but it hard to describe how it changed my approach of development strategy. I'm writing much less code than in Flash for same functionality. Working with components is much more conveniently for game development. I'm excited from possibilities that Unity gave me and ready for new experience.

2.28.2018

The Return



Reasons for return


More that three years have passed since the last publications in this blog. Now I'm filled with new ideas, desires and power to revive blog and create new content.

In general, I want to do a blog for myself: it's a good opportunity to write some ideas, as well as a good way to practice English. And this post is something like formality, explaining the further destiny of this blog.

What kind of posts are expected in the future?


Of course about game development. I want to pay attention on the analysis of prototypes, new releases and updates – key ideas and hypotheses, devlog notes, current statuses and post-mortems.

Also, I plan to expand the subject of the posts. Lately a number of thoughts have appeared that I want to share with others; in common about self-organization. And I always wanted to review some products (games, movies, software, etc.), now I hope to find time for it.

About tech side of the blog


Old blog used WordPress on custom hosting but it was lost in time. I decided to use Blogger for new version. It's not the best platform for blogging but I like Google services and hope that blogger could be better in future.

I revived old posts using Web Archive but some pictures, links or formatting could be missed. These posts labeled as `oldpost`, don't have great importance, but I want to save them by some reason.


This time I don't promise any regularity of publishing posts, but I'll be glad if you check here sometimes (it's strange that I can't find any subscription tool on the blogger).