However, now that I think about it, I dread to think how much worse that codebase would have looked if I had tried to crowbar in different image sizes into it as well. I really needed to crunch that course data down. All in all, I was quite happy with the end result and I imagine other people were too, or we wouldn't have been asked to do sequels. Not a bad thing, you might think, but generally the colour phones had larger screens too, and we didn't really make any effort to enlarge the images, so on larger phones the game tended to have a very 'letterboxed' feel to it. Another Java based mobile development system, it sounded like more handset manufacturers were considering taking it up and adding it to their phones. Optimisation was a little tighter in the game, with a better standardised way to deal with resource packing, and I started using an off-the-shelf Java obfuscator instead of trying to write one myself definitely a good idea!
Uploader: | Tugrel |
Date Added: | 1 September 2007 |
File Size: | 68.58 Mb |
Operating Systems: | Windows NT/2000/XP/2003/2003/7/8/10 MacOS 10/X |
Downloads: | 77753 |
Price: | Free* [*Free Regsitration Required] |
Despite still being in black and white, and still having a 96x65 screen, it came with something akin to OpenGL-ES! And on top of that, it would be in 3D!!!
Radivarl - Work:
First things first - course storage. And having learnt a lot from ScoobyI tried to make this a a neater codebase, and b less of a hack job getting colour integrated. I also dallied around with the concept of writing an obfuscator for the game. Back when I was doing Wentworth Golfthe java, course data and images stored on the server came to about KB when zipped up. Or at least, that was quite large by mobile standards. Slick and I ended up going over to Copenhagen to the Nokia offices there for about a week to work alongside the people making the handset to try and polish off a lot of the development and I think almost every evening on our walk back to our hotel we had the same discussion on how to get the renderer working faster.
There was a nicely dithered 3D colour render, some handsets even had reflections in the water, there were even weather effects.
Munkiki's Castles
As a result, I got all 18 holes of data stored in less than 10KB. Well, unfortunately, it meant that the code ended up being a complete dog and a mess! We're on our way to crunch stuff down. So what does this mean? Oh sure, when we were doing later projects things like the and Siemens SL45 were still around, but the people who owned them weren't the people spending money downloading new games, so as revenue earners they were becoming a smaller and smaller part of the games market.
However, now that I think about it, I dread to think how much worse that codebase would have looked if I had tried to crowbar in different image sizes into it as well. Okay, so we'd only be requiring one course the illustrious Pebble Beachnot two like in Wentworth, but that still left a huge amount of changes and optimisation I'd need to look at.
Now at this point in time, colour mobile phones were just on the way in and this ended up being the first game I did that ended up on quite a few different types of handset - screen sizes from 96x65 up to x; black and white screens to colour screens; small memory to large memory; large possible application size versus small sizes where we actually had to split the game into multiple downloads with a code that was passed between the two.
It was a continuous trade-off of the look we wanted versus poly counts versus frustum poly rejection optimisation. With iomo having developed a good relationship with Nokia through some WAP work we had done for them, it was doubly, no triply, interesting when they came to us and asked us to create a mobile game to be embedded on their new mobile handset, the I feel sorry for Steve who had to come along later and put it on some other handsets - as a studio, we didn't exactly have a great deal of multi-handset porting experience then, so I was kinda making up ideas as I went along.
Most the others I could probably go back to now, years on, and find some way of adding a new handset specification to - with this, eurk, I wouldn't wish that on anyone. And a lot of them weren't that great. You can't scroll more than a couple of dozen lines in this codebase without finding some " ifdef something-or-other" hack to get around the fact that all the phones were acting differently.
I think some of the really low-end handsets actually ended up without the 3D view because of memory limitations of what I was trying, and on top of that some had to sacrifice the golfer animations as well, but for the higher spec handsets, the end result was quite impressive, I thought, for the time it came out. Real world example - if you wanted to store the detail of 50'x20' rectangular swimming pool, you would get a piece of graph paper and write X's in a 50x20 grid - that's hugely wasteful - you'd store corner-position: The end result - storing vectorised outline information for all the course features.
I do have to admit that the graphics of the colour version were very much an afterthought, though. This game was also munkiikis introduction to the world of specification adherence or lack thereof that's such a pain in mobile porting. However, we did still cram quite a lot in there. Another Java based mobile development system, it sounded like more handset manufacturers were considering taking it up and adding it to their phones. I really needed to crunch that course data down.
I think, all things considered, this game has the most unreadable codebase of all the games I've ever written. There was the downside that on the higher spec handsets you could clearly see the vectorisation of the map data see those jagged edges to things in the screenshots above!
It was a real pain, and conceptually not terribly well thought out, although it did work somewhat for this one project. This munikis mean that downloadable apps were about to enter the mainstream a little more.
Unfortunately, we really only had a couple of hundred visible polys to play with if we wanted to keep the framerate reasonable, and the renderer didn't support line drawing in the 3D, so several optimisation techniques went out the window.
Комментариев нет:
Отправить комментарий