Wednesday, February 13, 2008

Stop the press: Portalized - "open source Portal"

Ok, this is the sh*t. Not only that, word has it, this is going to be open source. Of course, this is what some guy who reads some forum has emailed me, and I'm being completely sensational by posting it on an open source blog, but the youtubes are so cool that I can't help myself. Update: as confirmed in a comment by nullsquared [the author], he is currently undecided over whether to go with a freeware or open source license.



MasterNave emails, "Just got a tip from a coder friend of mine, about portalized, an open source portal engine, based on ogre3d. Apparently, 0.5 will be public."



So, the scene is set. Ready to blow your mind?





Ooo er that's kind of mad.



Update: the next video deserves a bit of explanation - it demonstrates scalable portals where the world is a different size through the portal. That is, if you go through the portal the world gets bigger/smaller, or if you pass an object through the portal that object gets bigger/smaller. Very neat.





Here's a Google video that, "Shows off the gravity that will be used in Portalized. Every physical object will have it's own gravity, and it can be anything (not just +x -x +y -y +z -z as shown in the demo)."





It's great to see somebody innovating. I know that the portal concept itself isn't exactly original, but ideas like the scalable portals and variable gravity per object are showing that nullsquared really has some come up with many innovations that portals are just part of.



I can't really find a homepage for the project. There are threads like this one (that contains a Windows development build) scattered across several forums but no official homepage yet, it seems. Nor can I verify the claim that this will be open source. Anyway, whatever happens, it looks great and it's cool to see a single guy using good Free Software tools to create amazing things.



Of course, Portalized won't come with the polished content that is part of the Portal game, but if he does open up this project then that's what you guys - the "community" - can provide, right? :-)



He does mention in a few places that the next version, 0.5, is going to be the first beta release. If anybody has any information on whether this will indeed be open source then please comment. I may (or may not) get in touch to ask nullsquared myself. Update: see the comments.

15 comments:

  1. There's not many things left in programming that really make me think "how on earth did they do that?", but that is definitely one of them! I couldn't even begin to think of the algorythms.

    ReplyDelete
  2. Anonymous10:06 pm

    Unfortunately, it seems it won't be open-source:
    "Oh, and it won't be free and opensource =)?"
    http://www.gamedev.net/community/forums/topic.asp?topic_id=438736

    :(
    I hope it will run on GNU/Linux at least...

    ReplyDelete
  3. nullsquared10:45 pm

    Quite random I found this blog... YouTube "linked sites" ;) while checking out comments to my videos (nullsquared here :D).

    1) it will run on Linux and Windows, probably MacOS if I can get to porting it to that (after all, most of my libs are cross platform and all of my code is platform independent itself)

    2) please no "final" judgements based on the development build in the facepunch thread. Some liked it, others didn't; it ran great for some, it crashed for others. It's a development build, so just wait for the 0.5 public beta.

    3) and the "big" question, open sourceness. I'm not quite sure. Whatever license I put on the code, there'll be n00bs that will be annoying and I'll hate to deal with. Mahalis (whom I respect greatly, he's the GMod Portal SWEP guy) advised me to not release it. I'm a bit 50%/50% on the decision... maybe only over SVN to "filter" n00bs. Maybe nothing. One thing that you'll find for sure, though, is a paper describing all of the techniques used. Including the portals and the rest of the physics, and some of the rendering (lighting through portals which is planned, etc.). There's also tons of Lua to be finished (right now just the portals and "some" physics are Lua-scriptable) which is "open source", of course, and lots of shaders which I'm planning on releasing as "learning resources", especially for Ogre3D users.

    And... I think that's it so far. Neat blog :). Also, I'm a bit all over the place with random posts on gamedev/ogre3d/newtongd/facepunch, and not everything is the same across my posts (posting times are different, my facepunch threads are most recent)... rofl.

    My email is nullsquared over at google's mail, if you want me. I'd put in "Google/Blogger" identity, but I don't like giving out my username + password to blogging sites ;).

    ReplyDelete
  4. Now that's great news. :D
    Of course I hope you'll choose to release the source...
    But a paper describing how you did things is already great. :)

    ReplyDelete
  5. IMO it would be cool if there was a little 'shimmer' effect on the portals so you could immediately and intuitively tell that they're not just windows. They're quite disorienting!

    P.S. With the linked enlarge/shrink portal, did anyone else wonder what happens if you throw an enlarge portal through it's linked shrink portal? Does it come out of itself smaller? My head hurts!

    ReplyDelete
  6. Offset7:18 pm

    I just got this working pretty well under wine 0.9.54. I'm using OGL mode and had to enter bind("MB_2", [[ forward() ]]) at the console to move forward ( most of the keys don't seem to work right ). Anyway.. It's quite fast on my 8800 gts.

    Great job nullsquared!! And don't let all those people that can't take the time to read the F***ING_READ_ME.txt drive you crazy.

    ReplyDelete
  7. Have just seen the 3 flash videos, it looks amazing.

    Although just releasing the game of Linux is a great move i'm sure if you opensourced it, it would help to advance oss gaming (and the code would end up being perfected..)

    Can't wait for the release.

    Cheers!

    ReplyDelete
  8. Anonymous: You read his post wrong, he was making a list of things that Valve's portal won't have: gravity puzzles, scaling portals etc in addition to valve's not being FOSS.

    "Yeah, it does. But Portal:
    - won't have gravity puzzles
    - won't have different gravity for difference objects
    - won't have different sized portals (basically we're going to add different sized portals, go into small come out big and you're a lot bigger, go into bigger and come out smaller, you're a lot smaller)
    - etc. etc.

    Oh, and it won't be free and opensource =)"

    ReplyDelete
  9. nullsquared7:37 am

    Actually, I'm not sure what I meant there by now. Like I said, I'm yet undecided. Maybe I will open source it, maybe I won't.

    Also, I get my source in about 3-4 days (not sure if I mentioned the fact that I'm in Europe on a 647MHz AMD and 32MB NVidia TNT2 right now)... loads of bug fixes and additions I've emailed myself so I don't forget them (rofl, no widely accessable TODO list). The biggest thing, though, is that I think I discovered the fix to everyone who had portal problems on the face punch thread (portals not teleporting stuff). For now, a "temporary" fix for the crappy dev build is to enable vsync.

    ReplyDelete
  10. You know, the best way to back something up is to open source it. =)

    Quoth Linus Torvalds "Only wimps use tape backup: _real_ men just upload their important stuff on ftp, and let the rest of the world mirror it ;)".

    ReplyDelete
  11. Anonymous3:12 pm

    If Portalized is derived from Ogre3D which uses LGPL license how can you ever release binaries but not source code without breaking LGPL license?
    And I don't see what some random n00bs or Mahalis dude have anything to do with it?

    ReplyDelete
  12. Anonymous7:29 pm

    A lot of closed software uses open sources engines...

    ReplyDelete
  13. @Anonymous
    LGPL has a linking exception, you can link LGPL code into a proprietary application without needing to give away the source for it. You only need to give away the source for the LGPL'ed code you use IF you modify it, nothing more.

    ReplyDelete
  14. Site is here: http://www.portalized.org/

    Please introduce yourself on the forums, post, and check for updates :D

    ReplyDelete
  15. I'd just like to register my vote for the open sourcing of this ... or at least a version that'll run in Linux. Really good job though :)

    ReplyDelete

lol, spam.