Jump to content

  • Log In with Google      Sign In   
  • Create Account



Posted by , 28 May 2014 - - - - - - · 763 views


This weekend I had an itch that I needed to scratch. I have sporadically been working on a project that uses SVG and javascript. I kept coming up against two problems: (1) getting a reliable bounding box around an SVG path, and (2) being able to properly align SVG paths with one another.

There are other solutions to finding the bounding box of an SVG path. Popular solutions are using the functionality of the SVG API itself, or using the awesome RaphaelJS library.

The SVG API is not pleasant to work with and, from what I understand, focuses more on operating at the level of the SVG node itself (what I would consider the root of the scene graph). I am more interested in working with the paths and composing objects from sets of paths. So, for the bounding information this is a little awkward, but it is really the alignment information that is unavailable. In particular, when you have an anchor point on a shape that is not in the middle or at the edges, it gets fiddly. I don't like fiddly. Especially, when I am working with things like Bezier curves that are really quite nice to work with. The information about the inflection points is really useful for what I am doing.

RaphaeJS is an awesome library but sometimes you just want to a solution to one particular problem. Since I was not intending to use RaphaelJS for anything else, just importing it to calculate a bounding box seemed wasteful.

And finally, I just wanted to solve it! :-) I love this kind of problem so I had a hard time not doing it.

The code is free and open and I hope some of you reading this may find it useful.



[BotC] Mesh Viewer

Posted by , in BotC 26 February 2012 - - - - - - · 592 views
BotC, update
Just a brief update.

We've been busily working on several fronts. There is some new art in the pipeline (Joel) that I will hopefully post next week, a bunch of research into the stories (Amanda) that we want to incorporate into the game, and some work on a couple of prototypes (Justin and Josh) that explore features we'd like to include in the game.

One little bit of progress we've made is getting our mesh viewer working for the prototypes. It is just a wire-frame viewer but we are intentionally not emphasizing rendering at this point in order to focus our efforts on the game features we are prototyping. That, and neither Justin or I are graphics programmers. At some point we are going to need to get a programmer on board with experience in OpenGL, and developing on windows and linux, but for now this will suffice.

So without further ado, translating through a galleon mesh!


Brotherhood of the Coast

Posted by , 04 February 2012 - - - - - - · 616 views

Some friends and I have started working on a pirate game with the working title "brotherhood of the coast". BotC wil be a pirate-themed RPG with a sophisticated environmental engine to create an immersive world, with a deep narrative that challenges the player to become a marauding prince of the seas.

One of the things that I want to achieve with this project is a high degree of openness about our process and progress. I believe it is incredibly beneficial to a project to enable people who are interested to provide feedback as early as possible. It is too easy to hide away and develop something in isolation only to discover that your assumptions about what others like or want is totally wrong. Providing regular updates via this journal is one way to show progress and get feedback but we will obviously need to create a website to provide better visibility.

Currently we are in the planning/prototyping stage of the game. The approach we are taking is to record all of the ideas we have and let our imaginations run wild. Then we prototype some of the ideas to investigate the level of risk involved to better understand the technological constraints that are going to influence the game mechanics we want to employ. So initially there is going to be a lot of iteration to actually try ideas out to figure out what works and what doesn't.

BotC is going to be developed and available on windows and linux.

Currently the team consists of:
Amanda (writing)
Joel (art)
Josh (programming)
Justin (programming)

And since no entry would be complete without some pictures, here is Joel's first concept sketch!
Posted Image

Programmer Art

Posted by , 29 October 2011 - - - - - - · 502 views

I know that there are numerous people here who use inkscape, so I wanted to pass this on in case you haven't seen it. It is a set of tutorials on Gamasutra by Chris Hildenbrand for creating 2D scenes and characters using inkscape. Currently there are 3 in the series, but who knows if there will be more. I hope so!

vim text objects

Posted by , 22 October 2011 - - - - - - · 524 views

For the last 18 months or so I have been working predominantly on linux. Most of my development during that time was in vim. Most game development seems to happen on windows so MSVS is the natural choice for most developers. Let me say that I do have frustrations with MSVS but I think it really is a wonderful tool. I've used it a lot and if I was developing on windows I would almost certainly use it. However, I have found that my move back to linux, the command line, and vim has really made development more fun for me.

During that time I learned a lot of vim, and began to understand why it is considered so powerful. Learning vim is like learning to play a game. There is definite leveling up. You learn a new technique or capability and then you incorporate it into your arsenal, making your vim-fu all the more effective. It is tempting to sound like a raving fanboi and go on about all the things that seem so right with vim, but I will spare you that (this time). Instead, and my reason for beginning this entry, is to pass on a tutorial that I came across that does a really fantastic job of explaining vim text objects. So if you do happen to share my love of vim, this tutorial may help you level up.

January 2017 »

15161718 19 2021

Recent Entries

Recent Comments

Recent Entries

Recent Comments