Sunday, 31 January 2016

Crikey 100+ pages

wow I've written 108 pages and 26,000 words...granted a lot of them are descriptions of what I'm going to write, but still I can't recall ever writing so much stuff in my life. I still have to write the games properly that I am going to use as the vehicle for introducing topics and test them out on my expanding collection of single board computers.  I've done most of them over the years with students so its not exactly new, but I need to create, before and after versions of them, and make sure the code is clean and tidy and simple to read. That will take most of the time I think.

As I read it back to myself I am developing a growing sense of confidence in this slightly crazy idea, a book that will cover all the basic aspects of writing a modern game on any target machine, without having to become a master of the hardware or the languages used, just knowing enough to get it done..

I need to do a bit more research to finish my publishing proposal, mainly to work out what other competitive books there are out there which are current and relevant.

I've also been on the hunt for some other Single Board Computers to use as targets, there's a few on the market, but none come close to the popularity of the Raspberry Pi, but I've got hold of a full set of Pi's now, a Beagleboard XM and a Banana Pi M1 (the soon to be released octocore M3 looks sexy, but will wait for it as its nearly 100quid), With my new Pine A64 due in March that should be more than enough to ensure decent cross board compatibility.

All this creativity has got my juices flowing on other things too, the Colecovision project has been languishing in no memory hell for weeks, but I hit on something that gives me shed loads , I'm looking forward to finally finishing that and handing it over to his long expecting dad.


Saturday, 30 January 2016

doped up Zombie and laying out chapters

Yesterday I had another of my silent migraines, no real pain, just a bit of a dull ache, but the scintillating scotoma that comes over me makes me partially blind for 5-10 mins, its rather scary

Worse though is the odd sensation afterwards, like a very stoned zombie, slightly nauseas, dizzy when I close my eyes and a strong feeling of drugged detachment not unlike when you get morphine in the hospital but without the happy feelings, which can last several hours. ie a Doped up Zombie
This one went on for about 6, really very unpleasant hours which I tried to fill with sleep...then I got drunk and the effect was similar.

I've been checked out with an MRI before where they concluded it was just an age/state of health issue, but I think I should go get another as I seem to be having them a lot more often, at least once a month and I think with increasingly effect.

At least I don't get the mega headaches I hear of in others...

Anyway, the interest of the publisher in my book has spurred me on to format the chapters in the book more carefully, I've added a few, and edited some of my waffle out a bit, I think the overall layout seems quite good so long as I can get my relevant points across in 700 or so pages.

Which is actually pretty challenging, squeezing what would take around 2 years for a student to learn into around 20 chapters...from beginner to Console wiz...will be interesting. But I think the method I use of not worrying so much about the language and focusing on the confidence and techniques will come though. I've done 100 pages so far with 4 chapters complete, though containing a lot of source at the beginning, I use less source as the book progresses and I discuss specific concepts.

Also I have done some research in to my potential target audience, that was very interesting indeed but I think I need to expand it a bit as I'm not 100% sure I can appeal to just 1 group of trainee coders.

Anyway, watch this space for update.


Friday, 29 January 2016

Getting very serious

Publisher has been in contact, the editor likes the idea, wants me to put together a formal proposal.

gulp...what am I letting myself in for!

700 pages of fun fun fun I suspect.


Thursday, 28 January 2016

Now I got to get serious

Thanks to some help from old friends and colleagues, I've been able to get some advice on the book and some very positive feedback on the concept.

and...I may well have interested a publisher....just waiting for some more feedback but if they say they want it, I'll have to knuckle down and get very serious about it :D

very excited now.


Monday, 25 January 2016

I has keys..and mice

One oddity of the Raspberry Pi seems to be its key and mouse handling. I am not a Linux coder, and am very deliberately trying to avoid doing anything with Linux beyond letting it compile and boot my programs remotely with VisualGBD, but there are a few things I still need it to do, especially when accessing any attached hardware to the Pi. For example Keys and Mice..

Documentation on how to access input systems, was sparse, mainly of course because sensible people usually are using some kind of library like SDL2 which itself handles all the key and mouse input.

I am however loathed to add SDL2 or any other large libs to my project as I try to emulate working on the machine as bare as possible. I want to maintain a promise to use only what the machine comes equipped with. Some libs will be needed, my screen loader and audio for example which would take far too long to do anything low end with. But the less the better. If we assume our lowest system is a Raspberry Pi A, we only have 256Mb of ram, I don't want that filled up with API's that use memory for code we never use, the lighter the project the more effective it will be.

Fortunately a fellow grumpy old git developer came to my rescue with some code that showed me how to get it working, and as a bonus is a good intro to threads and multi core coding. It still took a bit of twiddling with to get it to compile, but eventually it all clicked and ran on the Pi :D I will of course be giving Gareth Lewis an appropriate credit for his invaluable assistance. I think I would have been some time getting that to work on my own, and probably have to hit the Linux manuals (shudder)

So I now have a fully working and very small Input system that gives me key presses and mouse input, the rest of the process should now be fairly easy...fingers crossed!

Also I found a retail supplier for a new Pi zero, the teeny weeny version of it that was sold on a magazine for £5 last year...sadly I had to pay 3 times that but its ok I want to be sure my projects will also run on the lesser Pi's. I already have a B+ and I put in an ebay bid for an older A+ that should be plenty to ensure the projects reach the largest capture. They can still be bought retail though for $20 or so.

I also have a Pine64 on the way after the kickstarter program I backed was fully funded by some margin, which though not a Pi, shares the basic architecture of it and then some, and also runs Linux, so hopefully I can get that to also work and demo a higher powered system.

I must say I am REALLY enjoying writing this book, I am coding and also I feel I am teaching again, which is not something I get a sense of with our new V2 system. I can safely say I am laying down all my old course work into this book and it should help anyone who wants to write games, even if they don't want to use the Pi.


Sunday, 24 January 2016

Boom there it is....what took us so long..

Been having some struggles on the Pi with getting images in, loading was pretty painless, I managed to incorporate an image loader and get the Pi to use its file handling as expected, carefully managed the memory and reported back on the data that was loaded, all was fine.

But actually displaying my images was just bloody weird, I could sort of see the image, but they were scrambled, all the example code samples I tried failed, and there was so much re-writing of the standard OpenGL ES2.0 text book code to make it compile I was starting to think I'd invented my own language

But eventually as is often the case, it turned out to be a minor error on my part, I'd got height and width of my images mixed up...doh!!!  Brians 1st rule of self fuckery*, applies even to Brian!,

I now have a lovely pic of Danni and Harvey2 on the Raspberry Pi :D

I can now finish the chapter on loading and displaying images, though I'll have to change the images before I put them in the book.

Its nice when you finally get something working, even if you cock it up a few times as you go...its called learning ;)

*Brians 1st rule of self fuckery as taught to all 1st years at IGAD , "If your code doesn't do what you expect it to do, you fucked up!"


Friday, 22 January 2016

Johnny 5 needs more input

As the book takes shape and most of the concepts of coding and anecdotal explanations are now in place, I have to turn to the technical bits. I've got the getting started and other things up and running and it is now perfectly possible to make a painfully simple bat and ball game, but its time now to start doing the cool things, sprites, backdrops. Then move on to the super cool things in 3D.

I can do all these things normally but when putting things into a book I feel I need to be a bit more careful in my approach, anyone reading it could be scarred for life if they do some of my sloppy get it working then fix approach and consider that an industry standard.

So I've been hitting amazon for some books.. BOOKS? In this day and age, well yes I like books theres something easy and comforting in having a text book next to you as you type in examples. The internet is amazing but when coding I find books very reassuring to use.

I am very proud of my library, 1 large  IKEA Expedia bookcase bursting to the seams with technical books and manuals dating back to my early coding days. It needs a few more modern ones, but since consoles don't have a lot of books, the most recent things cover Direct X 11 and OpenGL3, not had a chance to do much with this years latest thingymajig
It might even be time to cough up a 2nd library, or at least an extra tier to be added..hmmmm that could be Saturdays shopping trip!

For my book I need more info on OpenGL ES 2.0, something until now I have not had much direct exposure to, though its not vastly different from standard OpenGL 2.0, it just has shit loads missing that I never used much anyway.
The plus is that with the release of OpenGL ES 3.0 some time back, all the ES 2.0 books are being given away...some as low as under a pound, though postage is always a fiver or so.

I have therefore splurged on some new books that will hopefully give me some enjoyment to read and provide some much needed proper technical approaches to use in my book.

I'm getting a lot of joy out of putting this book together, its got my juices flowing again, and even given me some smart ideas to finish my Colecovision project which is floundering in lack of memory hell, but a few good ideas have come forward which might get the last tiny bits of code in there to complete it.


Saturday, 16 January 2016

Sense of foreboding

What a shitty shitty start to the year with Bowie, Alan Rickman, and a host of minor celebs all dying at pretty young ages, not much older than me.

I don't think much about dying, but I have the last week or so, due to these deaths it just makes me realise how utterly fleeting our lives are, we're there, and gone in no time.

Sad, also strange, I wasn't a big big Bowie fan, but he has always been there or thereabouts in my musical world, some things getting to me more than others. His death is a true loss for music. I play quite a few of his songs with one band or another, they won't feel as much fun now.

In the more mundane world, I've just been getting on with coding and writing, the book is still on track, though the actual coding on the Raspberry Pi has been hit by some silly and annoying tech faults but they are slowly coming under control. Help has come from the support teams and I am back on the very slow learning horse and quite enjoying it.

Work is tiring me out, V2 is quite demanding, even though I appreciate that I can switch off at 5 and try to make best use of my time. The 2 full days of project work is exhausting, and frustrating too, I don't really get the sense that I am passing on much experience or wisdom in what I am telling them. But I have to give it a chance, self learning is the goal, and if they find the wisdom in other ways I can at least recognise that.

Love life is still DOA, even tied to get somewhere on Tinder...nope..a few people will match, but then after a short chat you find yourself unmatched and left with no reason why....too many people using it for fun I suspect..

I need to get out into the real world and get my Dutch improved, I have a pile of homework backing up from my Dutch classes that I'll try to do this weekend

Oh well time to go make some music, after I clear up the man cave, I've had a bit of a shopping spree of small things the last few months, Mics, stands, pedals and other goodies, and they need to be organised and stored, instead of strewn across the floor and tables. A Tidy Man Cave is the sign of an eligible man...maybe.

There's always the positives though, Danni's sending me regular pics of Harvey 2 and he's started to smile.. I've been boring everyone at work with the pics...still a very proud Opa.

Yeah, that's enough to cut through the dark things, focus on the light (oh saw Force Awakens...damn it is a good fun Star Wars movie)


Saturday, 9 January 2016

11,000 words and 50 pages in

The book is progressing and its a lot of fun, especially as I am learning how to use the Rspberry Pi as I do it, its quite exhilarating learning a new machine and then putting down the experience in a form a beginner can handle.

Reading it back it needs a bit of re-organising as some of my initial layout ideas need to be moved around but it reads quite well in the 1st 3 chapters.

I've so far done the setting up of a dev system, running and debugging 1st simple text programs on PC and target machine, and now have got the set up for Graphics and Graphic image loading done..
Just need to work out image display and we're ready to rock and roll.

Found out lots of cool things, as I've done tests,  been confused by a few others but worked them out and detailed the results.

This weekend, I hope to get a background screens and key control of an object in place to produce the 1st very simple game to build the framework on.

At this rate should only take a few months work to get the book and accompanying games to work. Though given my bad typing and propensity to make silly gag comments it might take a few months of editing to get it down to a decent number of pages.

Might need to go find a tame artist though to give me some decent assets for the project(s).

Hey ho...this is certainly a more interesting way to learn OpenGL ES2.0 than simply running through a few dry books. I always insist my students learn by doing, and here I am doing exactly the same...


Friday, 1 January 2016

So long 2015, you've been ......

I see lots of people saying how shit 2015 was, and lets be honest for me its been one of my most miserable years, I've been single the whole year and overall my love life sucks cheesy balls, work has been a pain at times, (side projects mainly, NHTV is still a great place to work)

But really it wasn't a bad year, every year, bad things happen, some worse that others, But why focus on the bad things, and why taint the whole year as bad..I didn't get cancer again, so that's a plus,  I became a granddad which was a mega plus, I got to spend Xmas with my daughter and cried with pride again (need to stop that). Had some amazing gigs with Starrcase, and a shocker with The Gadgeteers which sadly started a decline to breakup.

Ok there's some bad, but the good certainly was worth focusing on... It was a came it went, good things and bad things year will probably be the same.

Who knows, maybe I'll sort out my love life....hmmm maybe not..

Right now I have a hangover from an amazingly fun party..Happy New Year