Programming
Lua on the iPhone
27/Jul/2010 10:59 PM
I was first introduced to Lua 3 years ago just after I
started grad school; I first read about it in
Mat Buckland’s “Programming Game AI by Example,”
a reference I still always keep in arms reach.
As a total n00b in the universe of game
development back then, learning how Lua could be
integrated into my game code without really
having more critical fundamentals down first
shelved any use I had for the language pretty
quick. Well, things are different now, and as a
professional game developer, it’s time I give
Lua the respect it deserves. Read
More...
OSX + VTK = Pretty Cool!
13/Apr/2009 12:42 AM
Continuing my long standing tradition of being
overwhelming uninteresting, I thought I would post a
screen shot of my first attempt at using VTK for
medical imaging. Thank you, Rogue Research. Happy Easter,
everybody!
P. S.: I love my lady.
April Ghouls!
01/Apr/2009 08:21 PM
Wow.
Its time for an update!
I got VTK to build on Leopard 10.5; CMake sure is an awesome program! I used the SimpleCocoaVTK app as a code sample. I’m really excited how well it works.
Also, I made a iTunes playlist for when I do programming. Any suggestions are welcome.
First league game is on Friday! I can’t wait.
There was something else I was going to say...durrrrr.
I got VTK to build on Leopard 10.5; CMake sure is an awesome program! I used the SimpleCocoaVTK app as a code sample. I’m really excited how well it works.
Also, I made a iTunes playlist for when I do programming. Any suggestions are welcome.
First league game is on Friday! I can’t wait.
There was something else I was going to say...durrrrr.
Research Update
17/Mar/2009 03:27 PM
I
haven’t updated in a while because I’ve been really,
really busy with school and work. I got accepted into
the Ph.D program for the fall, but...I don’t know
yet. Below is a quick video of what I’ve been working
on for the last two months.
Beware of imitators
20/Jan/2009 09:51 AM
So, iPropose has done exceedingly well in the first
week of release. It has been downloaded 3000 times!
Not too shabby. In addition to this early popularity,
iPropose has already seen its first round of
copy-cats.
Another series of applications, named (unsurprisingly), “iPropose,” were released on January 19th. Ignoring the fact that both the name and the description have been ripped off, the author of this doppelgänger adds two additional SKU’s for the gay and lesbian community, respectively. All this, despite the fact that the description of my iPropose is left intentionally ambiguous for the purposes of hetero- or homo- relationships.
All things considered, I’m not losing sleep over the fact that there is another “proposal” app. I am a bit confused about the fact that other developers can just rip Application names off of previously released apps, though. Moreover, the other developer in question is charging 0.99 cents for their applications, and we all know that’s going to really fly. >.>
Another series of applications, named (unsurprisingly), “iPropose,” were released on January 19th. Ignoring the fact that both the name and the description have been ripped off, the author of this doppelgänger adds two additional SKU’s for the gay and lesbian community, respectively. All this, despite the fact that the description of my iPropose is left intentionally ambiguous for the purposes of hetero- or homo- relationships.
All things considered, I’m not losing sleep over the fact that there is another “proposal” app. I am a bit confused about the fact that other developers can just rip Application names off of previously released apps, though. Moreover, the other developer in question is charging 0.99 cents for their applications, and we all know that’s going to really fly. >.>
iPropose in waiting
08/Jan/2009 09:48 AM
Happy Belated New Year, everyone!
I wasn’t at all busy during the break. Rather, I played a monstrous amount of video games. I did manage to squeeze in time to program my first iPhone app. I submitted it to the App Store on Monday, and it currently is undergoing review. The app is called “iPropose.” The product description is available under the “Games & Apps” section of the site.
I wasn’t at all busy during the break. Rather, I played a monstrous amount of video games. I did manage to squeeze in time to program my first iPhone app. I submitted it to the App Store on Monday, and it currently is undergoing review. The app is called “iPropose.” The product description is available under the “Games & Apps” section of the site.
iPhone Tech Talk - Toronto
04/Dec/2008 08:38 AM
So I’m finally here! Sure, maybe I got a little lost
coming into Toronto, but after an unnecessarily 5+
hour drive in, I’m sitting in the main reception
auditorium. I’m either super excited or its just
super cold in here, cause these teets are primed!
Blokus & C#
23/Nov/2008 07:34 PM
I’ve been working on my final project for my AI
class. We have to write an rule-based expert system
in CLIPS which plays a game of Blokus. Of course, the
only things we’ve done in CLIPS thus far is a boring
text based 8-puzzle solver, and entering
full Blokus moves into the CLIPS command line
doesn’t seem very functional. So, if I’m going
to have to write the rules and such anyway, I’ve
decided to write a graphical version of the game
which interfaces with the CLIPS engine.
I’ve used XNA 3.0 to write and display the game’s graphics content. I’ve also used the latest CLIPS .Net release from ProAI. The work is on-going, and I’ll have to finish it by December 10th, but it’s going really, really well. I’m pretty proud of the speed at which it is being developed and will post it under the closed-sourced section of the site when it’s done.
I’ve used XNA 3.0 to write and display the game’s graphics content. I’ve also used the latest CLIPS .Net release from ProAI. The work is on-going, and I’ll have to finish it by December 10th, but it’s going really, really well. I’m pretty proud of the speed at which it is being developed and will post it under the closed-sourced section of the site when it’s done.
Macbook Pro, XNA & Parallels 4.0
17/Nov/2008 10:48 PM
For anyone interested, after Boot Camping my new
Macbook Pro (late 2008) and loading the partition
into Parallels 4.0, I was able to build and run a
default XNA 3.0 project. I’m assuming because of the
improvements in 4.0 and support for Shader Model 2.0.
Parallels 3.0 did not have the capacity to run any
XNA build because of the lack of supported “hardware”
(rather ironic term when talking about
visualization). Either way, I’ll post a screen shot
when I get some 3D content loaded in.
Please read instructions carefully!
28/Sep/2008 03:46 PM
While working on my research project/thesis, I
decided that I really need to start incorporating
threads into my apps to make anything of myself as a
competent programmer. This involved two significant
revelations: first, that pthreads do not inherently
play nice with C++ OOP (duh! they're a native C
library!); and second, threading OpenGL programs in
an entirely different ball game.
Getting a thread up (which, for the record, I have done before for classroom projects), was no big deal. Then realizing that C++ classes don't play nice with pthreads was a bit tricky. Once I figured that out (I welcomed static member functions with open arms, I just don't feel the need to code proxy thread classes! That's crap), I couldn't understand why my app kept crashing inside a thread using OpenGL calls. I thought it had to do with something I wasn't getting right when trying to recast a void*; however; some sleuthing made it clear that only OpenGL calls made the main process choke. All this eventually taught me a very valuable lesson...
READ THE INSTRUCTIONS FIRST!
The Apple documentation, conveniently titled "Multithreading and OpenGL," made it more than obvious that pitfalls run rampant across the OpenGL/Multithreading paradigm. Only a few sentences in gave me the clairvoyance I needed to see why my thread kept crashing.
I'll keep OpenGL calls within the main thread for now, but I look forward to working in Cocoa/Obj-C soon. At least there, OpenGL seems cared for delicately with plenty of out-of-the-box routines that are multithreading specific.
Getting a thread up (which, for the record, I have done before for classroom projects), was no big deal. Then realizing that C++ classes don't play nice with pthreads was a bit tricky. Once I figured that out (I welcomed static member functions with open arms, I just don't feel the need to code proxy thread classes! That's crap), I couldn't understand why my app kept crashing inside a thread using OpenGL calls. I thought it had to do with something I wasn't getting right when trying to recast a void*; however; some sleuthing made it clear that only OpenGL calls made the main process choke. All this eventually taught me a very valuable lesson...
READ THE INSTRUCTIONS FIRST!
The Apple documentation, conveniently titled "Multithreading and OpenGL," made it more than obvious that pitfalls run rampant across the OpenGL/Multithreading paradigm. Only a few sentences in gave me the clairvoyance I needed to see why my thread kept crashing.
I'll keep OpenGL calls within the main thread for now, but I look forward to working in Cocoa/Obj-C soon. At least there, OpenGL seems cared for delicately with plenty of out-of-the-box routines that are multithreading specific.
svn checkout svn://192.168.1.114
07/Sep/2008 08:13 PM
I setup an old beige tower with Xubuntu (733 MHz, 384
MiB) and put up Apache (of course), as well as *drum
roll* SVN! I'm using it on my research project cause
I'm trying to experiment with a bunch of new
programming designs for this project. I branched
a"stable" version and started a bunch of other
changes, and to know that I won't screw up the
original is just awesome! I should've done this a
long time ago.
w00t!
w00t!
glRotatef(xRot, 0.5f, 1.0f, 0.0f);
01/Jul/2008 01:28 AM
It's quite impressive what programming simple games
will teach you. I don't know why I've waited so long
to knock boots with small game projects. Sure,
admittedly I've had trouble following through with a
lot of them, but now that I've gotten over that first
big hump, its been a drastically different story.
I started writing a small game engine using C++, SDL & OpenGL. Source code will be provided in the coming weeks, but for now, check out the pathetically underwhelming screenshot after the jump. Read More...
I started writing a small game engine using C++, SDL & OpenGL. Source code will be provided in the coming weeks, but for now, check out the pathetically underwhelming screenshot after the jump. Read More...
glBegin();
23/Jun/2008 03:26 PM
So now with TetriSDL out of the way, I
started looking at other projects. Before I move
on though, I've committed myself to learning
OpenGL (and Kung-Fu, if there is
any time leftover). OpenGL is seriously the
wwwwhip, mostly cause its cross-platform and
ridiculously easy to work with. Any of the games
I start working on needs to be ported to other
platforms; all the effort I put into XNA doesn't
do jack shit if I spend 100% on my Macbook.
On a much more interesting note, I've been listening to the Flight of the Conchords almost non-stop. They're absolutely fantastic. Oh! And I've also been gearing up for Kat's return to life. I can't wait to introduce her to all the ladies I met at the bar during the past five weeks.
Enjoy the best Flash game on the Internet!
On a much more interesting note, I've been listening to the Flight of the Conchords almost non-stop. They're absolutely fantastic. Oh! And I've also been gearing up for Kat's return to life. I can't wait to introduce her to all the ladies I met at the bar during the past five weeks.
Enjoy the best Flash game on the Internet!
delete &myGame;
11/Jun/2008 11:12 PM
So I close a chapter in life. As noted earlier, I
started a lot of Tetris projects over the years, but
no longer do I have to feel defeated by lack of
interest or programming ineptitude. I make it sound
like it was an epic endeavor; sometimes it
was...especially when the ogres showed up.
As I expected, it was 4 lines of code changed to get it to compile on Windows XP. Click here to go to the code page.
As I expected, it was 4 lines of code changed to get it to compile on Windows XP. Click here to go to the code page.
tetrisGame.Update(&errorMsg);
10/Jun/2008 03:07 AM
Its been almost two months since my last update.
However, the purpose of this particular update is to
acknowledge a very special moment! Teris!
Sure I started plenty of Tetris projects here and there, the first being the DirectX version I slaved over while visiting Katherine at Yale, but what I have finished here tops all of them. Its written in C++ (with some Obj-C calls for alert boxes); its my most portable version yet (runs on Mac OSX, but itshould only be a couple of line changes for both Windows & Linux). At the moment, it does everything it needs to as a Tetris game. There is still a couple of changes I wouldn't mind making:
I'm tolerant of the only 6% CPU usage and ~6MB footprint it has right now. Still, it certainly can be improved; hell, it's only Tetris; it ain't Pong! I'll post the source and a Universal binary tomorrow.
Sure I started plenty of Tetris projects here and there, the first being the DirectX version I slaved over while visiting Katherine at Yale, but what I have finished here tops all of them. Its written in C++ (with some Obj-C calls for alert boxes); its my most portable version yet (runs on Mac OSX, but itshould only be a couple of line changes for both Windows & Linux). At the moment, it does everything it needs to as a Tetris game. There is still a couple of changes I wouldn't mind making:
- Add sound & music
- Improve CPU usage & memory footprint
- Needs a main menu
- No menus? No repeats!
I'm tolerant of the only 6% CPU usage and ~6MB footprint it has right now. Still, it certainly can be improved; hell, it's only Tetris; it ain't Pong! I'll post the source and a Universal binary tomorrow.
