Português English

Blogs

Unity 3D feature
2010.05.20

Unity 3D

Started recently to play with Unity 3D, an IDE/Platform to develop games. I’ve heard about it because they recently decided that the indie version to be free. And because this version is quite similar to the Pro version and the Pro version is affordable, I decided to give it a try.

I am really impressed with the package. It is solid in features but what impressed me most is the easy user interface. Generally, programs that strive to be easy to use also make things too restrictive. Unity 3D is not one of them. It is a super intuitive IDE but also can be changed through code.

As I discussed before, the competition of engines should be irrelevant to game makers because we have a lot of data demonstrating that while the technology might help, the actual implementation is what matters. Good games with old/bad engines and Bad games with state-of-the-art engines are quite common.

The main reason to choose one is� current knowledge. Learning things all over again is costly, and Unity address this by adopting several standard technologies. For scripting, you can use C# (very close to Java and C++), JavaScript or Boo. For 3D models, it imports the most used formats (3DS, Max, Ma, Blender�). The same goes for 2D (which also includes importing Photoshop native files), sound and music. All that means that your workflow and suite of programs will remain basically the same.

With the indie version being free, a huge increase of documentation and community support is expected. The same for professional assistance. I’m happy to move from Torque (which uses several conceptual dogmas that I’ve never liked) to Unity.

PS: with the web player, its possible to create games for web pages just like Flash� take a look in the demos.

Unity 3d 3 content 2128.jpg
Unity 3d 3 content 2127.jpg
Unity 3d 3 content 2126.jpg
Unity 3d 3 content 2125.jpg

Settings API feature
2010.04.03

Settings API

After creating several sites using several CMSes, one single thing still annoys me: the lack of a proper export settings feature. Putting a local testing site in the official online server is always a nightmare, since we have basically try one of the options:

  • Copy the whole database: it also copies several testing data we used.
  • Step-by-step replication: After 3 days, you will still discovery several options that were not copied
  • Manually select DB table-by-table to copy: unless you really know of are you doing, its quite crazy

In Drupal world, one of my most admired companies, Development Seed, created both Features�and Strong Arm�that try to address this, but the lack of broad and ubiquitous support we still feel that we will miss something.

Settings API content 2095.jpg

There are 3 types of data that a computer program might have:

  • External: the spreadsheet for Excel, html to a browser, the image for Photoshop� its the reason why the program exists.
  • Internal: the data that makes the program works. It’s the settings.
  • Temporary: stuff that the program creates in order to gain performance. It, by definition, don’t need to be backed up because the program can recreate everything

Every program that is a platform should provide a Settings API. It would help on 4 big scenarios

Local / Production

There are several situations that we need to maintain a testing site for development new features without testing in the real production site. But time to time, we are satisfied with the test results and we and to apply the modification into the production site. For some business, like 3rd party site development, its the daily job, so its a must to make this workflow faster and painless.

Debug

After installing several plugins, its each to get a very unstable site, because they are changing same data. It would be much easier to monitor modifications and find solutions. A settings comparison tool would be great, so we could see what were overwritten.

Distribution / Template

Platforms, by definition, allow us to build stuff over it. But quite often projects are similar. So why not create a template for other people to use it? For a site builder like Drupal, we could create eCommerce, Blog, Forum templates for an easy deployment. It’s an extraordinary feature for newcomers.

Settings API content 2096.jpg

Stack

If the program is settings aware, a good extra feature is to apply in a stack. It’s a similar concept of CSS, cascading settings based on specific variables. Imagine, for example, a site about football teams. While the site has a main theme, each team’s page can have one and the users can have a personal one. We could enabled this cascaded settings for each setting.

Multidimensional settings

If we have different content types in a site (ex: static pages, forum pages and news pages), we could have a page to change all settings related to each content type and have a page to change a specific setting of all content types.

As we can see, settings is a very important part in a program. We have to think it with more care to leverage its potentials.

2010.03.23

Alone or Around Others?

The idea of working all alone seems pretty tempting: nothing to distract your thinking process, no stress from the jerk on the cell phone. Just quiet.

Too quiet.

Sometimes my mind gets distracted by the silence � I find myself wondering where everyone is. So, like some other people who work from home I put on the television. Sometimes that does the trick, but at other times I just really wish there were some people around. Not co-workers, not people I know, but just (quiet) people as background noise. I worked from a caf� the other day and I got so many things done, so many ideas just popped up in my mind. The ambient noise was a catalyst of sorts.

What about you? Are you more productive at home, working alone, or when you�re around others?

2010.03.05

Is It a Game?

I could not (but I really wanted) play Heavy Rain. The core feature is the very flexible story. Players can end up with a very different experience. It’s focused in the storytelling and reviews say that the lack of game over� the story always progresses.

_Lack of game over? Where is the challenge?__ ;Ok, here we go: Heavy Rain is a game? A more profound question: what is a game? This is the difference between a game and a puzzle? Or a simple challenge?

So let me define:

  • Movies and books are not games. Games are interactive
  • Jigsaws and puzzles are not games. Games must have multiple players;(even if they have different role). Not that we could assume that an AI could be considered a player as well
  • Racing and swimming are not games. Gamers must interfere in the performance;of the other players
  • Toys and sandboxes are not games. Games must have rules and objectives

So, games should be interactive, multiplayer, competitive, defined by rules and they have a goal. Clark Abt defines _“A game is an activity among two or more independent decision-makers seeking to achieve their objectives in some limiting context”.

The curious thing is that if we take this concept to actual games, mane famous video games are not� games. Sim City, The Sims, Monkey Island, City Ville, Portal, World of Goo and Heavy Rain and several others fail in at least one aspect that makes a game.

Knowing this is a good way to correct position products against each other.

2010.01.15

GTD

Getting Things Done (GTD) is an organizational method created by David Allen, described in a book of the same name. The Getting Things Done method rests on the principle that a person needs to move tasks out of the mind by recording them externally. That way, the mind is freed from the job of remembering everything that needs to be done and can concentrate on actually performing those tasks.

I read the book and love it. It balances theoretical reasoning and practical attitudes. It says explicitly that it is not about a computer program or a special type of notebook. You are free to use any system you want. Webmail, Outlook, notebook, folders, color tags� you decide. But the book is smart enough to give you hints about using them, just for the sake of starting soon and being practical.

It at least opens the mind to be more productive in our ordinary life. Just don’t go crazy thinking about it all the time because, paradoxically, it can be really nonproductive.

PS: I recommend you strive to use itfor 3 months, forcing yourself. It’s easy to start but because it requires a new mindset, keep using the system harder and harder with time.

Bruno MASSA