Plugin hacking

General Comments Off

I finally got my plugin to not crash upon startup! Woo! This was difficult to debug the last few bugs because I was getting very unpredictable behavior of Realsoft3D and gdb together. Sometimes when Realsoft crashed, gdb would report the crash but wouldn’t trap it so Realsoft would exit and I couldn’t get a backtrace. Sometimes I would get a SIG32 for every event in Realsoft and have to type ‘continue’ each time. And one time XFree86 froze whilst I was debugging, but that hasn’t happened again, thankfully. Then sometimes everything would debug just like I expect it to. Weird shit.

This is sort of what the plugin dialog looks like right now.

Hacking

General Comments Off
    Not a lot of new stuff going on here. I was having some issues with the Realsoft3D SDK a couple days ago, but I solved all my problems with it now. The problems were mostly issues of using C and C++ code together in weird ways and suffering from borked up RTTI and virtual function tables. Other than that, I think I’m starting to understand how this SDK works better in general, although I still think it sucks all kinds of ass.

Movies..

    I went to see the new Charlie’s Angels movie tonight with Josh and Glori. It was pretty cool, and I liked that Cameron Diaz’s Spider-Man underoos made a short reappearance. Everyone knows that was my favorite scene of the first movie.

    It seems like I saw something else recently also, but now it’s all a blur and all I can think of is Cameron Diaz, Lucy Liu, and Drew Berrymore. Oh well.

Mesh file format

General Comments Off

I talked to some guy from WorldForge tonight. He’s trying to start up some open initiative to develop a file format for sharing meshes between different engines and games and stuff. I’m not totally convinced that this is a very useful idea, but I decided to join their mailing list to discuss it.

His/their feelings are that it would be cool to have a standardized file format that different engines or applications could read to load mesh data from. My feeling was that this would not be a good idea for a few reasons:

  • Each project’s file format is probably specially taylored to their memory layout (NeoEngine’s is), and so they either all have to rewrite parts of their engines or suffer slowdown.
  • Different engines support different features, and support the same features using different methods.

For these reasons, it made more sense to me if such a file format were to be done in XML so that it’s easily extensible. Obviously this doesn’t solve the memory layout issue, and I don’t think it needs to. It would be trivial to implement a converter program for NeoEngine, and I assume it would not be difficult for other projects. Then we have a fairly good way to share files between different projects without having to adapt the features or file formats of the engines themselves.

Honestly, I’m still not convinced that this would really be worth the time at this point. How many people are really trying to share content between open source game engines right now? MD3 and MD4 files are reasonably standard and are easy to implement, so I’m not sure yet if there is a good reason to implement something else. Still, I joined their discussion just to see what they had to say.

What would be wickedly fucking cool would be if some people started a nice 3D modelling application that doesn’t suck for Gnome or KDE, with a nice user interface. Perhaps some of the Blender code could be used as a basis, I don’t know. I know I’m not interested in doing this, and it would be a huge amount of work if it were even possible. I’m not saying it’s feasible, just that it would be wickedly fucking cool.

Ashlawn

General Comments Off
    It looks like I’m playing principal viola for the Ashlawn Opera Orchestra this summer. It starts on July 7. I just found out that Lesley is going to be playing in it too, which is really cool. She’s going to bring me a copy of the movie that we recorded a soundtrack for a couple years ago. I had forgotten all about it.

Ohno and Soviet Space

    I went out last night to the Aardvark Club in Fort Worth with Geoffrey and Nathan Brown, because Nathan’s favorite band, Ohno, was playing. Having been gone from the area for awhile, I had never heard [of] them before, but I thought they were really good. They have a refreshingly lyrical style, which is pretty much non-existant in most of the shit that I ever hear on the radio anymore.

    Then we went over to Fuzzy’s Taco’s for a little while because I was hungry, then we went back to hear some other local band called Soviet Space. Although they have a much cooler name, they were really, really bad. After hearing Ohno, Soviet Space was just pathetic, and I could tell there was a reason most people left at that point. They just sounded like Blink-182 or some such garbage.. the sort of band you’d hear on an MTV spring break special or whatever. Each song is just a really generic chord progression over and over, and when they felt fits of inspiration they would subdivide their beats one notch faster. They were out of tune and kept screwing up their notes and laughing about it.

Realsoft3D

    I’ve been working on a plugin for Realsoft3D to provide a dialog for saving scenes into NeoEngine’s format. I don’t really like Realsoft3D’s SDK that much, but it is what I have to use so I’m stuck with it. I do like Realsoft3D, though, and it sort of makes me want to write my own wrapper API in C++ that’s easier to work with. If I decide to work on any more plugins in the future, I might do something like this. Mirco told all the Realsoft3D guys about NeoEngine and this upcoming plugin and they seem to be pretty excited. Apparently a game engine is something that they’ve been wanting for some time now.