Friday, October 10, 2008

Converting System.Drawing.Bitmap to XNA Texture2D

For those of you who visit this blog for art or writing topics, this is your fair warning: this post will hold no interest for you.

For those independent XNA game developers who find this post via Google, I hope I can help with a problem I've seen talked about in a few places on the 'net.

In the game I am currently working on, I have a need to load a bunch of bitmaps into memory, and then I need to turn those bitmaps into texture objects. I'm using a blend of GDI+ and XNA in my application, you see. Previously, when I was using MDX in conjunction with GDI+, this was no problem because there was a direct conversion available. Since XNA is dual-targeted at both the 360 and the Windows platforms, there isn't a conversion available.

On various forums I've seen solutions batted about relating to doing a per-pixel copy of the images from one format to the other (often using Bitmap.GetPixel, which is horribly slow -- you're much better off using Bitmap.LockBits, but even that is not nearly ideal).

The solution I have is simply relating to memory streams, since a Bitmap can be saved to a stream, and a Texture2D can be loaded from a stream. This approach might seem like a waste of memory, but it's the most processor-efficient way to do this. My game is able to process several dozen 28x28 images in under two seconds using this approach. The trick is to do the conversions just in little bits, as you need the images, rather than doing them all up front (which would take forever, and really give the garbage collector fits). I leave that part up to you. Here's the C# code for the actual conversion, which is quite simple:
Bitmap b = new Bitmap( nameOfFile );
Texture2D tx = null;
using ( MemoryStream s = new MemoryStream() )
{
b.Save( s, System.Drawing.Imaging.ImageFormat.Png );
s.Seek( 0, SeekOrigin.Begin ); //must do this, or error is thrown in next line
tx = Texture2D.FromFile( GraphicsDevice, s );
}

That's all there is to it!


(Added point of interest: It seems that XNA is unable to load GIF files -- presumably a licensing thing, knowing GIF -- but of course regular .NET is able to load those just fine. Using this sort of code provides a way for you to load GIFs or any other format that .NET supports but that XNA does not into XNA Texture2D objects. This is handy for me, because at present my project has... uh... just over 8,500 GIF files in it.)

Thursday, October 9, 2008

Smooth Scaling Tiled Sprites In XNA

For those of you who visit this blog for art or writing topics, this is your fair warning: this post will hold no interest for you.

For those independent XNA game developers who find this post via Google, I hope I can help with a problem I've seen a lot of frustration on (and experienced frustration with myself). For background with the problem, see these posts (#1 and #2).

To summarize what you will find at those links, basically there is a "problem" when scaling images in XNA or DirectX wherein if you use the Sprite/SpriteBatch objects to draw a series of tiles, you'll get cruddy little lines, grids, or seams between many of your tiles. But the problem ONLY happens when zooming in (i.e., scaling 2D textures to a resolution higher than their native resolution), and it's fairly inconsistent. Sometimes half a pixel or so, sometimes up to a pixel, but never more, and it doesn't always even make a grid between every tile.

The main theories on this were that this was some sort of floating-point rounding error, or that this has to do with odd-sized textures (that perhaps are not powers of 2 -- mine, for instance, are 28x28), or that this was related to lacking the Clamp state of the u and v axes of the SampleState. Personally, my money was on some sort of "off by one" issue relating to zero-indexed widths and heights. None of these are correct.

As one enterprising programmer on the above links figured out, the real culprit is interpolation. By default, when scaling textures, Bilinear Interpolation is used to make it look nicer. If you are familiar with how that algorithm works, basically it's using a 2x2 grid of pixels adjacent to each target pixel, and blending them together. That works great in the middle, but at the edge of each tile there is nothing there -- each sprite tile is rendered independently (for the most part), which is why the black line creeps in. That line isn't a gap at all, it turns out, but rather a factor of the interpolation.

The quickest solution to this is to use point-based interpolation, which is basically no interpolation at all. In XNA, the C# code would be this:
sprite.Begin();
GraphicsDevice.SamplerStates[0].MagFilter = Microsoft.Xna.Framework.Graphics.TextureFilter.Point;

Problem solved, right? Well, yeah, but now we have a new problem -- without interpolation, your zoom is going to look awful. Programmers on the message boards had a bevy of potential solutions to this, some involving custom shaders, some involving replacing the SpriteBatch class, others involving manual edits to every image used in their game.

I have a vastly simpler solution (both in terms of programming effort/time, and in terms of processor time). Here's my rationale: this is an interpolation problem based on the fact that each tile is rendered separately, right? So the problem is not that we're scaling these tiles up, but rather that we're scaling them up one-by-one. If only there was a way to combine them all before rendering the current frame, and then scale them up together!

But wait, I hear you say -- something like that doesn't sound processor-friendly, right? That would basically double the amount of rendering we need to do, wouldn't it? If that's not what you were thinking, ten points for you for remembering that we're already doing that -- it's called the back buffer!

Since we're already rendering these sprites to the back buffer, then flipping them to the screen all at once, we've already got this pretty much handled. All we need to do is tweak the size of the back buffer before rendering, and it will automatically scale up to the view area -- perfect interpolation, great quality, no lines. The C# code looks like this:
float zoom = 0.8;
this.GraphicsDeviceService.ResetDevice( (int)Math.Round( this.ClientWidth * zoom ),
(int)Math.Round( this.ClientHeight * zoom ) );
I'm assuming here that you're using WinForms-hosted XNA code like from this example (http://creators.xna.com/en-us/sample/winforms_series1). If not, you'll have to fiddle with how to get this working in your environment. The basics are to set up a PresentationParameters variable with your desired width/height and to then do a graphicsDevice.Reset() and pass in that variable.

A few last points of interest:

- You'll notice that the zoom is inversed here. The zoom of 0.8 is actually equivalent to zooming in 1.2. The reason for the inversion is that we are shrinking our back buffer relative to the surface it will be rendered to.

- "this.ClientWidth" is assuming that you are calling this method from the Form, Panel, or whatever handle is your render target.

- As you may have already noticed, this method isn't compatible with your traditional "camera" approach, where you move a viewport relative to the world coordinates. To implement scrolling in your window (which is presumably the point here), you'll want to implement a global offset to your X and Y coordinates that are passed to SpriteBatch.Draw. NO NEED to do some massive global update of all your objects' coordinates as your window moves -- that's crazy. Leave your game world coordinates alone, and just do an offsetting of them as they are rendered in SpriteBatch.Draw. That way everything gets rendered efficiently, no massive updates are needed, and there isn't significant processor overhead incurred.

Happy coding!

Monday, September 22, 2008

Regarding Breaking Dawn

***SPOILER ALERT***
If you want to read this book and have not, don't read any further.





















Okay, so you've already read the book, or you're that sure you'll never have even a passing interest in it. Fair enough either way. My wife and I have both enjoyed every book that Stephanie Meyer has published so far, and Breaking Dawn was no exception. I tend not to read criticism of books I like (there is rarely any point, as it boils down to taste), but in this case the criticism was inescapable.

I started reading this book the day it came out, and finished it within a day or two, so it's been a few months since I've read it. I'm a bit late to the party with posting my thoughts on the novel, but I've been busy. Mainly I want to respond to some of the criticisms that have been made against this book:

1. The book is fan-service.

Well... this is true. Seems like kind of a fitting way to end a series to me. The protagonist gets what she wants, and everybody goes away happy. It doesn't make for a groundbreaking, emotional knife-twisting, but it sure made me happy. The Time Traveler's Wife was both wonderful and haunting, and it left me miserable and depressed for days afterward. Quite the opposite with Breaking Dawn. Personally, I think there is room for both kind of books -- those that reaffirm life, and those that speak to the inevitability of death. I'd really hate to imagine a world with just one or the other. I tend to trend toward the bittersweet or dark endings in my own writing, so this is in no way a defense of something I might do. But I'm not opposed to the idea that something I'd personally never do is still a valid thing to do.

2. Bella is too perfect, creating a vehicle for the author to fantasize through.

Well... I can see that, too. But this is hardly new. Superman and a lot of other comic book heroes come to mind as falling into a similar mold. It's satisfying to read something like this every once and a while, though it would have been boring if the whole series had been this way. It is indeed more interesting when the main characters have flaws, but Bella has been so flawed for the rest of the series that it's quite an interesting change to see her as the active, powerful one for a change (she has been so passive in many ways in the other books, so it's a notable shift). I can see why this would turn some people off, but I don't think it's right to make a sweeping dismissal of the work for this reason.

Oh, and the complaint that all the guys fall over her even though she thinks she is ordinary? Well, this really happens. Whether or not it happened to Stephanie Meyer is irrelevant, this is the story she was telling and it is not as fantastical as some people seem to think. The same thing happened to my wife a lot in high school before we got engaged (and after, a bit). Of course, I know the truth is that my wife is far from ordinary, even if she never seemed to believe it!

3. The birth scene.

Squeamish, are we? My wife and I plan to have kids in a few years, and this scene did not change our views on it one iota. It's an interesting bit of science fiction. I guess maybe this was unexpected for some in a YA book, but Stephanie Meyer has noted that she never set out to write YA with this series.

4. Overuse of adjectives and descriptors like "dazzling."

This is definitely a glitch in Stephanie Meyer's writing, but it's hardly something worth condemning her for. If she were not so popular, people wouldn't complain about this. For a relatively new author, she's extraordinarily polished and professional in her presentation and wording. People complained about "saidisms" and other extra adjectives in J.K. Rowling's books, too, but I also felt that those complaints were a bit on the nitpicky side.

5. The book is angsty.

Well, so are a lot of teenagers. So are a lot of people in love. I think that part of the reason this series works, and the reason it resonates with people so much, is the fact that it is truthful in its emotions and its story arcs. If you're jaded and don't remember what it was like to be young and in love (or missed that boat entirely), I guess it would seem a little overmuch. But again, this boils down to a taste thing. I wouldn't want every book to be like this, but I wouldn't want every book to be like any single work. This book does an excellent job of honestly telling the story it is trying to tell.

6. Characterization blunders.

(Jacob and Edward's shift in views throughout the book, the easygoing nature of Charlie and the mother when it comes to Bella's wedding, etc.) Some people have complained that these parts of the story seemed out of character with past novels, but I didn't feel that way. I was surprised at how easy Charlie and the mother took it on Bella, but it wasn't grossly out of character -- his laid-back attitude and the mother's flighty nature had been long established. Given that, it wasn't much of a stretch to have their reactions be comparably tame so that the story could move along.

As for the changes with Jacob and Edward, there was support for their changes in past books, too. Edward has long made it clear that he would do whatever is best for Bella even at the expense of his happiness (hence his offer for her to have "puppies"), and Jacob has also been fairly prey to Bella's whims. The "imprinting" thing was also long established, and provided an interesting and funny plot arc.

7. Build Up To Nothing

So they do all this preparing for a battle that doesn't happen, right? I disagree. The battle very much happened, but it was more about positioning and maneuvering and discussion than just brawn-on-brawn. Surely you don't think the Cold War wasn't a real war just because we didn't have tanks and planes and nuclear weapons firing left and right?

Yes, there was not a battle in the traditional sense (as there was in Harry Potter), but I think this was one of the strengths of this work. The physical/magical battles in Harry Potter were long established through the series and so to not have one at the end would have been a letdown to be sure. But in the Twilight series, physical violence has been far overshadowed by the threat of violence along with emotional and mental conflict. Stephanie Meyer delivered on all these fronts without taking the story in a cliche direction just for the sake of having a "big battle" at the end. I thought it was the right decision, and it tied together nicely with everything else she had written so far.

8. Bella doesn't lose anything. There are no sacrifices.
Yep, this is a pretty "happy ending" type of book. In some respects, it is almost one long epilogue to the rest of the series. As I said before, that's not the sort of book I'm likely to write (I trend darker than that), but it doesn't offend me in the least that Stephanie Meyer chose this path. I found it interesting, and enjoyable, and a wonderful way to say farewell to the characters. In fact, if she wrote another book that was an "epilogue to the epilogue," so to speak, I'd read that one, too.

There are room for all kinds of stories, and not all of them have to center around suffering and loss. Bella and Edward (and Jacob) certainly suffer plenty during this novel, and there is conflict everywhere even when an overarching plot is not evident, and I felt like that was more than enough to keep the story interesting and meaningful. The fact that the suffering is passing and that everything works out is perhaps part of the uplifting theme of this book -- some genuinely dark and scary stuff happens (the birth in particular), but at the end of it things are better and life goes on. Surely this is a message worth writing about at least in some books?






There were other complaints in addition to these, of course, but most of them were so clearly rooted in taste that they aren't really debatable. To me, the most important thing is that Stephanie Meyer's work was original and interesting -- she didn't fall back on formulaic tropes, and she didn't bore her audience with self-indulgent tangents and explanations. Almost everything fit, the pace was reasonable, and she left at least this fan with a pleasant memory of her series at the end of it all. You can argue the artistic merits all day long, but I think there's value to be had in doing just what Stephanie did.

New Art

Over the last few months, I have added a variety of new images in my latest gallery. Some highlights:

Back Creek 2

Blowing Apocalypse
(This monster is the one I am considering making a plastic model of.)

Broken Gravity - Panoramic

Hangar Scaffolding

Power Substation

River Vegetation 2
(Now with realistic shoreline)

Swallowing Pills

This is more of a public service announcement than anything else. All my life, I have been unable to swallow pills. In twenty-some years, I've never swallowed ONE single pill. For years I have had acid reflux disease, but it has gone untreated because I couldn't take the medicine. Now the consequences of that have become more serious, so I finally managed to teach myself how to take pills.

According to some statistics on the Internet (who knows how reliable these are), perhaps as many as 40% of all adults have trouble swallowing pills -- to the point that they sometimes skip their medication out of frustration, etc. I tried all the various techniques from all sorts of different sources. I also bought the surprisingly-inexpensive Medi-Straw to try to improve the situation. Nothing worked for me (but there are lots of good ideas on those links, and the Medi-Straw would probably do great for people with different swallowing methods than me).

But I kept at it for weeks, trying to swallow this stupid little slow-release pill that was fast turning into a demonic tormentor. The trick, for me, finally came with analyzing how I normally swallow and focusing on that. Let me explain:

Like a lot of people, I eat relatively quickly. This means I was already swallowing fairly big chunks of food while eating -- much bigger than a pill at times -- without thinking about it at all. This is something we all do, and so it stands to reason that we can all learn to swallow pills easily with practice. Two months ago I would not have believed I would say that, though!

My breakthrough came from tearing off half-dollar-sized chunks of wonder bread and chewing it, then swallowing it. No pill yet, just the bread. I noticed that I could comfortable swallow pretty much the whole thing in one go without incident or discomfort, after chewing it a bit. I focused on the way my tongue stayed out of the way (it had historically been blocking the pill from going down my throat, or keeping it pinned against the roof of my mouth), and the mechanics of how I swallowed when I wasn't stressing about something foreign (like the pill) being in my mouth.

At least for me, it was nearly impossible to swallow the pill until I paid more attention to how it felt to swallow naturally. I suspect others will find the same. Once I was comfortable with how it should feel to swallow the pill, I took another half-dollar-sized piece of bread and chewed it up. At the last second, when I was ready to swallow, I instead paused and dropped the pill in first. Then I swallowed, and presto -- I could hardly believe the pill was gone.

This remained difficult for another week or so, often taking up to 45 minutes of trying to successfully complete, but with more practice it became gradually easier. Sometimes I had to chew the bread a little more with the pill actually in my mouth (careful not to chew the pill itself), but in this general way I was able to get the pills down reliably.

Now it's been about two months, and I can easily take pills on the first try with just a bit of bread. I've also taken them with brownies, grapes, lasagna, and other random foods that happened to be handy at the time. I still can't take it with liquid, but pretty much any food can be chewed up and swallowed with the pill. It's not a matter of "disguising" the pill inside pudding, or some other sort of food -- it's a matter of suppressing my gag reflex and satisfying my subconscious that there aren't harmful foreign bodies in the food. Once I learned how to do those two things, it all became possible, and in fact surprisingly easy.

You can do it too! The last tidbit that helped me on this long road was this: evidently it is impossible to accidentally inhale a pill given the mechanics of how your mouth is constructed. This was extremely reassuring, let me tell you. Best of luck everyone out there who still can't take pills reliably -- I have every confidence that you can accomplish this thing. If I can do it, after all those years of failing, truly anyone can.

The Protomen

The Protomen are absolutely amazing. I've never been a particular fan of Mega Man, but their music video (see link) really hooked me and I bought both their albums. If you aren't into NES-style chiptunes (I love them) you should stick with the first album, though.

The Protomen are basically a band that creates rock operas surrounding the story of Mega Man. Their title track, Hope Rides Alone (the music video linked to above) is pretty amazing, but a lot of their other tracks are just as good, if not better. The Will of One is just incredible, as are The Stand and Sons of Fate.

As with most rock operas (another personal favorite: Beethoven's Last Night), I found I had to listen to the Protomen album multiple times before I caught everything that was going on. The first few listen-throughs I simply found the material compelling, and a good listen. After I really understood the story, however, I discovered a truly unexpected emotinal weight to it. I've always thought of Mega Man as largely uninteresting, lightweight robot fare (apologies to fans), but the story presented here is something I won't stop thinking about for a long time. This just became one of my favorite albums.

Shapeways

If you haven't heard of Shapeways and you're at all into 3D computer design, check it out. It's a service for printing three-dimensional objects made of lego-like plastic. That probably sounds like sci-fi if you haven't heard for 3D printing before, but it's quite real. What's unique about this service is its relatively low cost compared to most 3D printing shops.

For authors that are also into 3D modeling, or who know (or can pay) someone with that skill, this is a pretty cool opportunity. Personally, I'm planning on making a plastic model of one of the monsters from my current novel -- if it is published, that will be a pretty cool thing to have for giveaways, and as a talking point at any signings, etc. Definitely better than pens or buttons or whatever (though those have their place).

Maybe I should be selfishly hoarding ideas like that for my own personal use, but someone else is bound to think of it anyway. And really, hoarding good ideas is for lonely jerks. Let's see some durable, painted, limited-edition figurines of characters from upcoming novels!

State of the... me

It's been a long time since my last post, hasn't it? Well, there's no surprise there for me -- it was inevitable. I stink at routines. Everything I do in life seems to happen in spurts, since I have so many things competing for my attention. I'm sure everyone here is familiar with that juggling act.

"Everyone here? You mean he expects that someone is still hanging around this dusty old blog?"

Well, oddly enough, the weekly hits to my blog/website have hardly dropped at all during the long silence, though the visitors are of a different nature. Where once I primarily had aspiring writers popping in from blogs like Miss Snark, Nathan Bransford, or Anne Mini, now it's mostly people finding me through keyword searches on Google or Google Images. Amazing how free art can bring in random traffic. I hope people are putting it to good use / enjoying it.

But I digress. At this point I should be launching into the cliche Blogger/Livejournal "I'll try to do better" post, right? God knows I've written my fair share of those already this year. But I'm not going to flog that dead horse again -- time to stop apologizing. Fact is, I'm not a "good blogger" and I don't really aspire to be one. Daily content of merit? Lord, I don't think I have it in me. Weekly is even a huge stretch. I've long been fascinated with the cartooning careers of Gary Larson and Bill Watterson, wondering how they managed to keep up a daily flow of great work over what basically amounts to a decade. And now I know... I'll never know. I'm just not that sort of writer. I don't write poems or short stories for much the same reason -- everything worthwhile I write requires forethought and marination, as well as page space to stretch its legs.

Hence why my blog posts have always been a bit too long for comfortable daily-digest-style reading. This just isn't my format. Besides, all the time and effort I might spend on trying (and ultimately failing) to maintain a "good" blog would just be siphoning that time away from more meaningful pursuits.

Here I considered going into a lengthy definition of "more meaningful pursuits," supported by commentary on why I'm unhappy with many of my prior posts about writing, but one thing I'm learning these days: less is sometimes more. I trust you can draw the needed inferences yourself, and if not... well, you probably don't really care anyway.

SO. What's this blog still doing here, if I'm not going to treat it like a proper blog? Well, my current plan is to mistreat this poor webspace for years to come. Yes, blog, you're in for an extended, lonely, world of pain: you've just become primarly... *gasp*... a news page.

Basically, if I have some news to share, I will. If I don't, I won't. How frequently will I update? Who the heck knows? Will my posts be long and insightful? Probably not! Will I provide interesting links on occasion? Yes! Posts of new art? Yes! Lot's of rhetorical questions and exclamation points? Let's hope it ends here!

In all seriousness, sometimes I have things I need to share with the world, but there's not a lot of value in me blathering on about nothing during the in-between times. I'm not very good at it, and it's not a personal goal. Lately it's been quiet on the personal-news front because I've been writing, working on another project of a different sort (to be announced in around a year, most likely), and basically taking some time to enjoy life and spend time with my wife.

The writing well, for me, really dries up without those other stimuli and activities. This is the main thing I have learned about writing in the last quarter year: some activities sap my ability to write well (like watching copious amount of low-grade television or movies, Internet/blog addition, reading too many novels that aren't in a style I admire), while other activities enhance it (video games in moderation, exercise, healthy eating, watching mostly movies and reading books with writing I do admire).

I've also finally been able to answer my most burning question to my own satisfaction: What is a novel? As in, what does it consist of, how is it made, why and in what way do some novels become more than the sum of their parts, while others sputter on the runway? I'd love to be able to share that revelation with you, but I can't really express it. It's a personal thing, anyway -- everyone who's really considered the question could probably give you a wildly different dissertation on the subject. It's not so much my answer that should matter to you; the important thing is, if you are truly serious about writing, that you take the time to vigorously search for your own answer. Finding mine has taken roughly three years of struggle, and I'm quite positive my thoughts on the matter will grow and evolve -- perhaps even change completely -- over the coming years.

So, for now, that's the news. All is well, my writing is proceeding at the correct pace for maximum quality of the novel and sanity of the author, and so on. A few more frivolous posts to follow (links to things I've found interesting recently, but haven't posted about).

Wednesday, June 4, 2008

Character Names

Originally in response to a post by Anne Mini:

Character names are definitely something I agonize over, and I use everything from baby name resources, to phone books, to random name generators (often just looking for syllables I like), to census records from various locales (the census records make for particularly interesting results).

I almost never use a first name I find with a last name I find with it. I search until I find one name that sticks, and then search for its companion. Of course, if the names are at all common, someone has that name, but I never start out trying to pick the same name as someone else.
Even my main characters tend to change names over the course of my planning, and sometimes also over the course of my writing and even late-stage editing.

In a literal sense, the person’s name is all we can “see” of them, and so the name has a lot of connotations for how I picture a character. A Mary looks a lot different from a Tzer-Talan, even if you give them the same detailed physical description. Even a Pam looks different from a Mary in the above situation.

I’d say I agonize over the major character’s names just as much as the title (even though I know the title is probably going to change, I want it to be the best it can be out of the gate). The minor characters are less troubling, but still really important and often hard.

Sometimes, when I don’t have much planned for a character, I pick a name that evokes something interesting and then build the character up around that. An unusual character name can almost be as good as a writing prompt!

Saturday, May 24, 2008

More Art, and Checking In

I apologize for not blogging more in the last few months (or posting on other people's blogs more). I've been very busy in my day job, and when I have had spare time I've been writing or making art instead of blogging. I can't show you any of the writing yet (though I will say that I started completely over on Alden Ridge), but here is the art I've done since mid-April or so:



River Vegetation


One of my new favorites from my own work. Somehow everything just gelled in this one -- the water, the light, the trees and the rocks and the sky. This is a rare image where I used an secondary light source (in addition to the sun) in order to achieve a specific effect. The same shadow and light effects could have been achieved if the positioning and density of the clouds was just right, but that would have been much harder to set up and then control.

Perhaps my favorite thing about this image is the sense of depth to it, and the way the river winds through the landscape. I used four separate terrains in this image to achieve that effect (rather than trying to chop a river into a single huge terrain). Not sure why I haven't ever done that more before...




Rural Ruins


I was very pleased with how this image came out, not the least of which because I learned more about how to effectively use displacement mapping in Vue. I modeled both the fence and the ruined house in SketchUp, but the house was rendered almost a year ago for a Bryce rendering called Snow Crest. I was very unhappy with how the house looked in Bryce, and so stuck it way off in the distance in the original image. In this new rendering, the house is right up close and I used displacement maps to add that extra realism that makes it work (the much better lighting also helps with the realism factor).



Rolling Arch


This is something of a spiritual successor to the very first rendering I ever did (though I had done some games related 3D modeling before that rendering). I love the refraction and reflections of the glass of the arch.

I modeled the arch in SketchUp.



Angry Desert


The sky in this one was rendered at unusually high quality, and I think the results are quite worthwhile. I recently upgraded my computer to a quad core, however, and it still took about 4 hours to render. On my old computer, based on speed comparisons I've done with other scenes, it would have taken more like 12 days to render (yes, days).

The building shown here is a modified version of the office from Treetop Office. I think it quite works as some mysterious semi-camouflaged desert outbuilding.



Night Pier


This rendering is based on something I saw during my weekend in Virginia. This rendering is from memory, and isn't an exact match, but it's a pretty good approximation of a very cool view I saw near the end of sunset. If you'd like to see a photo of exactly what I was looking at, that is now available here.

I modeled the pier in SketchUp, but the lamp post is an object packaged with Vue.

Monday, April 14, 2008

Forest Fence and Other Renderings

It's only been a few days since my last art post, but right now I'm in an art-creating binge. Also, I recently upgraded my computer to a quad-core, so I'm now able to get a lot more artwork done in the same amount of time (my time just waiting for the renders to complete is drastically reduced by this). Without further ado:



Forest Fence


This image is a bit darker than I would have liked, but what can I say, this is the lighting in which it looks the most realistic (I tried several sunnier variants with no luck).

I'm definitely really happy with the overall look of this, though -- if you've been following my renderings for a while, you might remember that I've previously had a lot of trouble trying to get anything approaching a realistic forest scene. I feel that I've finally done it.

I'm also pleased with the quality of the fence, which is something that I modeled from scratch in SketchUp. I think it turned out exceedingly realistic. My wife and I went up to Virginia this past weekend, and I saw some fences like this and knew I wanted to render them.



Loss 4


Thanks to an excellent comment by Stephen Parrish, I decided to take another stab at my Loss theme. This is the same image as Loss 3, except that I've completely redone the water (new waves, light flares, two layers of water, displacement mapping, and subsurface scattering). The result is a much more pleasing shadow for the tree (I think), softer waves, and a more vibrant solar reflection in the water.



Rural Overhead


Another great suggestion by Stephen Parrish, who asked about orthogonal views in the rendering packages I use. While this rendering isn't strictly top-down, it's as close as I wanted to come (a little bit of side-perspective adds more depth).

The fence is the same one I used in Forest Fence, while the houses, tower, and chapel are all free models by the fine folks at Turbo Squid.

Rob!

This is hilarious. I'd never heard of Improv Everywhere until literary agent Kristin Nelson mentioned them, but this is just the sort of thing I love. It's sort of like Candid Camera, except much larger scale. Another favorite is the Slo-Mo Home Depot stunt -- the reactions of the employees are priceless.

Friday, April 11, 2008

12 Dreams of Steel and Coal

It's only been a few months since I got Carrara, so I'm surprised to find myself already moving on. Vue is an even better program that recently came into my price range (it's still on sale, if you want to give it a look). This is one of the few rendering packages I've used that has made appearances in commercial special effects (Pirates of the Caribbean 2, most notably).

I'm sure I'll continue to use Carrara some, as I may use Bryce on occasion, but Vue is now the prime tool in my art milieu. All of the pieces from my latest gallery (still in progress) were done in Vue. Here are some of them:


Overcast Marsh


This is an instant favorite for me -- and it's also one of the most realistic renderings I've ever done. I hope to be able to realize this level of fidelity in many more renderings.


City Cloudscape


My 300th rendering (not counting those in The Dregs or those that have never seen the light of day at all)! That seems fitting, because this was an instant favorite for me -- its a spiritual successor to one of my earlier works, Sky Castle, which was created nearly ten years before. 300 renderings in 10 years... that's not too shabby for something that is, after all, a hobby.

The building models are not by me, but rather came packaged with Vue 6.


Loss 3


This is my second remake of perhaps my most popular image ever, Loss. The original version was done in Bryce 2.0, way back in 1998 when I was first learning how to do renderings. The second version was done in Bryce 6.1 in 2007.

When I was heavily into Carrara rendering, I tried to make a version of this image using that program. However, I found that the fantastical nature of the image just didn't turn out very well in such a realism-minded program. I was afraid the same thing would be true with Vue (which is equally realism-minded), but the flexibility of the atmospherics model in Vue is such that I was able to achieve my unrealistic sunset with a modicum of tweaking.


Overland Sailboat


It's been a really long time (almost a decade, I think) since I last rendered a low-lying landscape from this height and perspective. I love this sort of view, but the challenge of realistically managing the horizon has always kept me sticking with more mountainous terrains (which I also love, of course). Finally, with Vue, I'm able to achieve the sort of effect I've been looking for all these years. This is one of my few renderings that someone has mistaken for a photograph at first glance.

The sailboat is a stock item from Carrara 6, imported into Vue.


Distant Skyscrapers


These are the first building models I've created myself in a while. Vue is able to import directly from Google SketchUp, and is able to do so in a manner that makes it easy for me to apply complex textures (which Carrara and Bryce both had trouble doing with SketchUp objects), so I imagine I'll be doing more such modeling from now on.

The twiggy brush in the foreground is also of my creation, based on a different solidgrowth tree in Vue. In general, I was very pleased with how dismally industrial I was able to make this scene.


Cliff Rays


"God rays" are a favorite subject of mine in landscapes, and this image marks my first foray into that territory in Vue. I was also particularly pleased with how the crags of the mountain came out, along with how the foreground grasses add realism and perspective.


Subcon Palms


I love this one. In some ways it reminds me of the opening chapters of the Prince of Persia: Sands of Time game, but I designed it as a 3D re-imagining of Subcon, from Super Mario Bros 2 (one of my favorite games). I love the look of this one in any case, though, with its multi-layered ecosystems.

This is also the first night scene I've done in some time, because I was having a hard time making those look right in Carrara. It's actually more complicated to make night scenes in Vue (in Carrara and Bryce there is a simple toggle), but the end result can be much better. I imagine I'll be doing more of them.


Desert Fire Fog


This was my second rendering in the full version of Vue. I wanted to see just how good the lighting and cloud effects could be -- the answer is "quite good," I think you'll agree.

One thing I really like here is how volumetric clouds are treated almost like meta blob objects (rather than simple bounding cubes). This allows for low-level clouds that look more organic, both by giving each component cloud a more realistic shape, but also by letting them "merge" together into larger clouds in a realistic manner. It's a little hard to explain if you aren't already familiar with this sort of thing, but let's just say that it lets artists model unusual natural phenomena more easily.


Sunset Ruin 2


This is a re-envisioning of one of my favorite early renderings.


Sky Canyon


This one was unusually tricky to get right, and took me several more iterations than normal to get right. I'm pleased with the end result, except for the horizon line.


Blue Crags


This is another one that took me forever to get right. In the end, the composition is completely different from what I had originally imagined, but I'm happy with it.


Autumn Mountains


My first rendering in the full version of Vue. I was immediately floored by how realistic the "ecosystems" component is. These sorts of grasses and trees wouldn't be possible in any other rendering package.


Stormy Islet


One of my moodiest pieces ever. I was particularly pleased with how the ocean waves turned out.

Tuesday, April 1, 2008

Two Tone Range

Two Tone Range



Purely an experiment in lighting and atmosphere, the end result is something I really like. I enjoy the contrast of the ruddy darkness beneath the clouds with the grayish light above them. This sort of duality is the sort of thing that occurs all the time in nature, if you think about it, but it's the sort of thing we are rarely able to see from ground level.

Saturday, March 29, 2008

Hairy Spaceship

Hairy Spaceship



One of my stranger renderings of late, it's also one of my favorites. I wasn't really sure what I was going to create when I started with a blank slate in Hexagon, but the underlying structure of this model was what emerged. I thought it would make a good base for a translucent crystal of some sort, but when I started working with it in Carrara I quickly decided to go with something darker, opaque, and reflective.

The hair was the stroke of inspiration that tied this all together for me -- the weather, the water, and the patchy mist clinging to the ship all serve to refine and emphasize this one aspect of the scene.

Frankly, I find the end effect pretty menacing. Always a good thing.

Thursday, March 27, 2008

So Many Clocks!

I've never really thought about this before, but this world really is filling up with clocks. Doing a quick mental inventory of the clocks in my house, I come up with:

1 oven clock
1 microwave clock
2 wall clocks
3 alarm clocks
2 desk clocks
2 watches (at least -- probably more)
3 computer clocks
1 clock in answering machine
1 clock in VOIP phone
4 clocks in entertainment center equipment
3 clocks in miscellaneous other electronics
1 clock in wall thermostat
1 clock in bike odometer

That's 25 clocks right there, and I know I missed a good number of them. I also only counted those clocks that have some sort of visible display, whether on a monitor/screen readout or whatever. I'm sure various other electronics have some sort of internal clock of which I'm not even aware.

This is a pretty random thing to quantify, on the surface -- but on the other hand, it seems pretty descriptive of our society that we are perhaps more surrounded by timepieces than any other civilization on Earth has ever been.

Wednesday, March 26, 2008

Force Feedback In Managed DirectX

I recently wrote my first article for Code Project. It's on a pretty niche programming topic, specifically controlling the actuators in game controllers via C#. This is something that should be a pretty basic topic, but a longstanding bug in some Microsoft libraries prevent their examples from working with many game pads. My article outlines the basics of how to do that sort of code, and shows how to work around their bug.

Let go of my CD!



I recently discovered an online comic called xkcd, and I must say it is hilarious. A lot of the jokes are things that would only be funny to programmers, but I think anyone can appreciate this one. I enjoyed many others from that strip about turing tests, sysfaults, compiling, imaginary kilobyte denotations, and many other topics, but I doubt you'd be as interested in those if you're part of my normal readership (aka, other writers).

Monday, March 24, 2008

Island Chain

Island Chain



Another Carrara sunset, this time I was playing with light to see how dramatic I could make the effect. The result was quite pleasing, though I did have to massage the colors and contrast a bit in Photoshop to get the final effect.

The tower model was a freebie from Turbo Squid.

Saturday, March 22, 2008

Unintended Influences

Whenever my family gets together, we generally play games. Xactica, Turn the Tide, Five Crowns, Phase 10, and Coloretto are long-time favorites of the Card variety (though we also enjoy others such as Descent, Settlers of Catan, Princes of Florence, among dozens of others). Anyway, the point being that we have a very wide variety of games we play.

Recently, we've added Three Dragon Ante to the mix. It's a fun, semi-strategic, card game under the Dungeons & Dragons license. I've never played D&D much, though I have played some of the computer spin offs such as Unlimited Adventures and Neverwinter Nights. I have a reasonably thorough understanding of most D&D mechanics, though I've never been wholly invested in the property.

Imagine my surprise, then, to discover the names of two particular cards in Three Dragon Ante: Bahamut and Tiamat, the two dragon gods. These were names I had given to two of my seven Elder Dragons in THE GUARDIAN (which are also the only dragons in my series -- and there are no elves, dwarves or fairies/faeries, I swear).

I hadn't realized that these two names were used together in D&D, or I never would have chosen them to use in my own work (I picked them for their mythological significance). Fortunately it was something I caught on my own, well before the work was even sold -- how much more embarrassing would it have been to stand accused of plagiarism years later? At that stage of the game, it would have been very hard to convince anyone that the choice of name was unintentional. I hear the same sort of thing happened to Katherine Paterson with Bridge to Terebithia. I've been sympathetic to her on that issue since I first heard of it, but now I can really relate.

From now on I'll be googling every name I use if it seems at all familiar. A lot of the names I use have their roots in various world mythologies or classic works, but using names from modern writers/works isn't the same thing. I've renamed Bahamut and Tiamat to Deinderak and Tiarak, which are definitely unique. The characters were already quite unlike their (unintentional) counterparts in the D&D universe, so at least their monikers were all I had to change.

Writing a novel is an interesting endeavor in that you are simultaneously inspired by others' works and setting out to do something wholly original. The more original the better, of course, but there's no way to be original unless you know what else is out there (and, come on, good writers enjoy reading for pleasure, anyway). Sometimes a little too much of some other writer's influence sneaks into our works, and we have to guard against that. Even without the issue of plagiarism, reusing characters, names, ideas, or phrases from other works isn't going to make your own writing stand out. Where would we be if writers weren't out there inventing words like "hobbit" and "muggle" and "jedi?"

Wednesday, March 19, 2008

Doctrine of Insufficient Adulation

Via Slashdot, I found an interesting article called Why Apple fans hate tech reporters. The basic premise is that when people are really rabid about an idea -- the merits of a certain product, religion, or political stance -- they perceive even-handedness as an insult. In other words, if I think you're completely wrong/evil/whatever, and someone else comes along and doesn't immediately leap to my side, I'll feel like they're siding with you.

Interesting. Disturbing. This is apparently just part of human nature, because I've certainly seen it before in life, though I'd never thought much about it until WSJ columnist Walt Mossberg pointed it out. It's particularly troubling for me, because I tend to avoid political conflict by remaining neutral. Go ahead, ask me what I think about abortion or Israel or Global Warming -- I'm not going to debate those things with anybody, at least not at present.

There are many conflicts in the world, a great many of which affect me, but I am not enough of an expert on them to feel like I can take a meaningful stance. On those issues with which I do have first-hand experience (the need for helmets on bicyclists, issues with violence in schools) I'll definitely speak out. I know it's more popular for people to have ardent opinions on anything and everything, but that's never sat well with me. I've always been a moderate, only taking one side or the other when I feel particularly informed or knowledgeable about the issue.

And now I discover that even moderation is likely to drag me into ideological scuffles I want no part of. How the heck does Switzerland do it? Oh, well, life wouldn't be interesting without conflict.

Thursday, February 28, 2008

Oddest Book Titles

Reuters recently had an interesting short article on this year's finalists for the oddest book title. I can't decide whether I think "Are Women Human? And Other International Dialogues" or "Cheese Problems Solved" is funnier. Of course, "I was Tortured by the Pygmy Love Queen" is pretty good, too.

As the article points out, it's really nice to see that the publishing industry isn't homogenizing too much. There are still plenty of quirky oddities making it into print.

Wednesday, February 27, 2008

Why I Write

Literary agent Nathan Bransford posed this questions to his readers: why do you write? Here's my answer:

My own personal character has been heavily influenced by the works I read as a child and a young man. Books have a way of reflecting and crystallizing real life, and our favorite characters are often foils to ourselves. I write not so much to change the world (though that would be nice), but to hopefully help others shape themselves into the people they want to be -- as my favorite authors helped shape me into who I wanted to be.

On the other hand, one of the main reasons I write is simply to provoke a response. If I can make people laugh, or cry, or look at something in a new way, I've been successful. Novels are entertainment, education, and sometimes even catharsis. For the author as well as the reader. But mostly, I write because it's part of who I am.


PS - In other news, I am quite busy on a writing project, which is why I haven't been blogging much. I hope to be back soon!

Friday, February 8, 2008

Writing Status

Well. I am sick. Yesterday was the worst, with my temperature getting up to 101.8, among other unpleasantries (which I will spare you). Not sure if this is the flu or not, which is going around NC in a major way, but it's certainly cutting its way through the school where my wife works. At least the really bad phase seems to last only a day or two for most people.

Today I'm still home from work, and as you can tell I'm catching up on my blog posts a bit (to distract myself from how my body feels, mostly). But I'm way too out of it to get any actual writing done, and have been for a couple of days now. I did get maybe a page written on Wednesday, before things got too bad, and I've also been making prewriting notes so that I can hit the ground running once I'm better. Amazingly, I finally sat down and wrote the first half-page of my synopsis -- I think that's going pretty well, so far.

And... that's pretty much all the news.

Roads, versus their destinations

Yesterday, Dwight made an interesting post called What's a little sacrifice between friends. He brings up some very interesting points about happy endings, and predictable endings, and why he prefers works that are not formulaic in their resolutions. One interesting quote from Dwight's post, this one specifically referencing movies:

As a kid, I was the biggest James Bond nut. Somewhere in my teens (circa A View to a Kill with that awful Duran Duran soundtrack) I finally had the “He’s never going to die. What’s the point of all this? Why am I wasting my time here?” epiphany. I was done with Bond.
Here's the original response I posted in the comments of his blog:

Very good post, Dwight. I have a lot of the same feelings. The intersting thing about tragedy is that it often goes well until the end, when everything falls to shit. I don't like to write tragedies any more than I like to write comedy, or happy endings, or whatever.

As you say, write the story honestly. For me, this means bits of dark comedy throughout; moments of success for the hero and moments of abject failure (somewhere between page 1 and "the end"); and endings that are never all bad nor all good. Bittersweet? You could call it that.

But, more to the point, things are never wrapped up with a bow on top -- for good or for ill. Just like life.
I still stand by what I wrote there. However, as yesterday progressed I found myself wondering how I could think that, and still love Bond movies (or the latest Batman incarnation, which has much the same problem -- there's no way Batman will die, any more than Superman "died" in the mid-90's during that whole "Death and Return of Superman" publicity stunt). How is it that I can pride myself on writing the unexpected, often bittersweet endings, and then not be as judgmental with other works? What's the appeal of those other stories, if the ending is a relatively foregone conclusion?

Well, I think it boils down to the fact that I don't read books or watch movies for their endings. I want to find myself captivated the whole way along, and if the ending is predictable -- so what? If I come away feeling good and happy about myself, what's the harm in that?

Granted, my own writing tends to be much darker, but that doesn't mean mean I can't enjoy the lighter side of things in others' works. In the case of the Pierce Brosnan Bond movies, it was all about the cleverness of the action and situations, and the interesting bad guys and their plots. Sure, it was lightweight fare, but it was pretty entertaining nonetheless. Those aren't among my favorite movies, to be sure, since they lack the depth to make me really connect with them, but every movie I enjoy can't be my favorite.

With the most recent Bond movie, Casino Royale, the writing is much more poignant and deeper, and Daniel Craig portrays a much more interesting Bond. Did I think there was a possibility that he might die in the end? Of course not. But there are a lot of things nearly as bad as death, in such movies. What about the heroine? She's fair game to die, and I didn't want her to. What about the other secondary characters that I was coming to care about -- would Bond be able to protect all of them? And, of course, there are other interesting subplots, such as his relations with M (who doesn't seem to like him very much), his growing finesse as a spy, and the ever present danger of betrayal. So, clearly, there was a lot to keep it suspenseful.

I think the same can be said of Batman Begins, which is another of my favorite movies. I was less interested in Batman before that movie, but I really connected with every aspect of that rendition. Harry Potter was the same way -- of course there was no possibility that Harry was going to die until the last book in the series, and even that seemed pretty unlikely. Yet those books drew me along like few others, as there was a whole world there that I cared about and didn't want to see ruined. There were plenty of characters that I cared about just as much as Harry, and was distraught when they did die (though I was artistically pleased with all of her choices as to who to kill).

I could give plenty of other examples of books I think fall under this category (The Dresden Files, which I just finished the first of and loved, for instance), but I think you get the point. The endings of books and movies should definitely not be telegraphed in advance -- that's bad writing -- but the central question of whether the protagonist(s) live or die is not always the most important one. Sometimes it's all about seeing what they do along the way (all unexpected events, hopefully), and sometimes it's about any collateral damage that might occur.

Clearly, statistics aren't everything

This post at SF Signal shows which books supposedly are for the "dumb" kids, and which ones are for the smarties, as evidenced by the correlation between favorite books and SAT scores.

I highly recommend you read the original article, but here's the graph they include, for quick reference:



Hmm, interesting. I'm quite surprised to see that the average score (on the older 1600-point scale, rather than the new 2400-point one) does not go any higher than 1250. At any rate, I know loads of people who scored way higher than this entire range, and who loved many of the books on the lower end of the scale.

My favorite book is Ender's Game, but I'm also quite partial to Harry Potter and the Chronicles of Narnia (just to pick examples from this list). My score was about 1425 (790 in English, thank you very much). My wife is not nearly as partial to Ender's Game, but liked Eragon and loved Wicked and Harry Potter (though her favorite books, most by Connie Willis, aren't even on this list). She scored a 1590. I knew plenty of people who scored in the 1400-1600 range who loved Lord of the Rings above all else.

Of course, this might be skewed by the high school I went to -- Enloe was the top magnet high school in the country when my wife and I were there. I was actually a bit embarrassed by my 1425, and with a ~4.4 weighted GPA, I was only something like 125th in my class of about 500. My wife had a much, much higher weighted GPA, and a much better class rank in her year, but I think she'd rather I not publish those on the Internet.

The point is that I don't think that the books we read (within reason) are necessarily indicative of intelligence or SAT scores, and certainly that kids shouldn't be discouraged from reading certain books because it will "make them dumb." Obviously there are benefits to reading thought-provoking works with an advanced vocabulary, but reading works of value that inspire you is also important. Great books are about people, relationships, and ethics (Harry Potter and Ender's Game) as often as they are about deep ideas in an academic sense. Read higher-class literature if that's what moves you, but don't expect that to be a primary determinant of your academic success.

Tuesday, February 5, 2008

Progress is Progress

Wild Zontars had to drag the information out of me*, but I managed to write three and a half pages today. For whatever reason, the juices just weren't flowing -- but I persevered. I'd write more here, but it's late and I'm tired. I'll try to make a more interesting post very soon.

The stats as of today:
-52,625 estimated words.
-62,186 actual words.
-210.5 pages.
-Song(s) listened to while writing: Lacrymosa, by Evanescence; The Man Who Sold The World, by Nirvana; Monstrous Turtles!, by zircon

* Ten thousand points (**) if you catch the incredibly obscure reference I made above without googling it.
** One point if you can catch the much less obscure reference I made in the first footnote.

Monday, February 4, 2008

Blog Birthday

That's right, this blog turns one year old today. No fanfare, just business as usual. I've made some progress on my writing (actually, I've given in to the urge to do a bit of editing -- to good result, at least), but I don't have enough that's new to warrant a full progress report. I hope to complete an entire new scene tomorrow, but we'll see what else comes up in the meantime. I find myself with a lot of different things going these days...

Sunday, February 3, 2008

Manuscript Analyzer Online

The Windows version of Manuscript Analyzer has been getting some pretty good comments and use around the Internet, but one undercurrent that I've been encountering is that there are more writers who are Mac users than I had anticipated. To provide a solution for those users who can't use the Windows version, I've created Manuscript Analyzer Online.

This program is written entirely in JavaScript, and so works with Internet Explorer, Safari, Netscape, and FireFox without the need to install any software at all. The online edition contains all the features of the Windows edition, and is only very slightly slower to run.

The big concern that everyone is likely to have with this program, however, is its online nature. Is it stealing their manuscript, or transmitting it across the Internet where passing hackers might take advantage of it? The answer, of course, is no. Otherwise I wouldn't have put it up.

The program itself is about 24kb, and gets downloaded as a web page via your browser (like any other web page). Once it is downloaded, that's all that is transmitted: using JavaScript, the program analyzes the manuscript on your own computer, without any more interaction with my web server. This means that it also will work just as fast for dialup users as it does for users on cable or T1 (after that initial download), and that you don't have to keep an Internet connection open to use it.

Hopefully that alleviates any concerns that anyone has, but if there are other questions please do let me know and I'll be more than happy to address them. Also, I'm still quite interested in ideas for improvements/extensions to the program, so feel free to email me with those.

Exciting News

Well, this is certainly the most exciting news I've been able to post in a while. Remember how I've been admonishing you to read DON'T MURDER YOUR MYSTERY, the nonfiction book on writing by mystery editor Chris Roerden? Well, I promise you that my recommendations have not been skewed by the following news, which is a very recent development:

It turns out that the first line from my current WIP will be included in the next edition, DON'T SABOTAGE YOUR SUBMISSIONS. DSYS will be the expanded, cross-genre edition of the 2005 original, which won a 2007 Agatha award among many other honors. DSYS will be released later this year (I'll post a reminder as the time approaches).

This is very exciting for me not just because it's a great publication credit (hooray, query letters), but because I so wholeheartedly support this book. Amongst all the various writing books I own, this one has far and away been the most helpful on a practical, nuts-and-bolts level. It's really an honor to have my writing included with the many other examples of good writing that Roerden uses.

Friday, February 1, 2008

Chapter 13 Completed, And A New Process

Yes, I know I haven't been around much recently. Or, at least I haven't been making any blog posts or many comments elsewhere, though I have been reading the blogs on my list. I've been steadily working away for the last couple of weeks, though not directly on my manuscript for most of that time. I've got a new, secret project that I've been working on -- something that should prove rather useful and unique when it comes time to promote my book.

Yes, I know, that's getting ahead of myself -- the book isn't even done, and it's not definite that it will find an agent, let alone a publisher. But the promotional idea struck me a few weeks ago, and I knew I had to put it in motion. It's the sort of thing that will hopefully make me marginally more attractive to agents and publishers, anyway -- prepared marketing ideas, and all that. At any rate, my novel will still succeed or fail on its merit alone (I'd have it no other way), but every little bit helps in this business.

Moving on: I have made substantial progress on my novel itself. I've now passed 60,000 actual words, 50,000 estimated words, and 200 pages. And, best of all... (drum roll? no?)... I'm through with my revising-expanding work! Wow, that's only taken... um... has it really been four months? Well, the novel has doubled in length during that process, and definitely improved in quality. I plan on writing the last hundred or so pages in a lot less time than that, though.

That's the other thing I've been working on recently -- figuring out why I've been so blocked, albeit off and on, with my writing in the last year or so. There's one obvious answer: I didn't emotionally handle the rejections of The Guardian all that well. Well, granted. But there's another, deeper, reason: my writing process hasn't been matching my actual preferences. In fact, my writing process has never matched my preferences, but until The Guardian I was too blindly optimistic to care. Now that I'm less sure (but hopefully also wiser), my process has been smothering me.

What was my process? It basically boiled down to this:
- Plot in advance as much as possible.
- Figure out the rest as it is written, to keep things fresh.
- Write everything in order, and write the first draft as well as possible.
- Revise prior content before moving on with new writing.
- Try to hit a certain word count each session.

I think that's a pretty common process for writers, actually, but it just doesn't work for me. Or, I should say, it doesn't work well. It has, after all, helped me finish two and 2/3 books. But at the same time, I managed to not finish over twenty five (nineteen of which came before I finished my first book, though, so in retrospect those were really just learning projects more than anything else).

At any rate, my shiny new process is this:
- Plot in advance as much as possible.
- Figure out the rest as it is written, to keep things fresh.
-BUT don't ever go into a writing session thinking I'll figure it all out as I go.
That's a sure recipe for slow death during the session.
- Write things in the order they occur to me.
- This will be MOSTLY in chapter order, but definitely not in scene order.
And certainly not in paragraph order within the scene. Often it is easier
to jump ahead to some dialogue or action or description that I'm sure of,
and to then come back and fill in the gaps I was less sure about.
-Write the first draft as well as I can without going back and constantly revising.
- This also means not sitting at the keyboard for twenty or thirty minutes
trying to revise a single line (this was previously a common occurrence).
- Revising is much more effective, at least for me at this point in my career,
when done suitably after the initial writing. Also, wearing my editor's hat
scares the hell out of my writer's hat, and makes doing further writing that
much more difficult. Something many professional writers have said, but I
never listened. Well, I'm listening now.
- Ignore word count when trying to gauge progress in an individual session.
- The more important note is whether or not I finished the block of story
(usually a scene) that I wanted to finish. If I can finish one scene per writing
session, I'm doing good. Three scenes, like I wrote today, is doing awesome.
- Keep a to-do list of scenes that are ready to write, and scenes that need more plotting.
- Just being able to check items off my list, and to see the number of items on the
list as they dwindle is an inspiration to do more. I've used this trick with my
programming for half a decade, and it's just now occurring to me to do this with
my writing, too.

So far, my new process works. I'll let you know how it goes.

The stats as of today:
-51,500 estimated words.
-61,051 actual words.
-206 pages.
-Song(s) listened to while writing: Soundtracks to Meet the Robinsons, Superman Returns, Hook, and Brazil

Friday, January 18, 2008

Overcast Crags

Overcast Crags



This rendering is notable for several reasons. First, it's the first black and white scene I've ever done. I've always been one for color, but in this case I wanted to do something dramatic and new.

Secondly, this image represents the most accurate "brain dump" of a place from one of my novels. If you look through my art gallery archives, you'll find literally dozens of renderings that I've done to correspond with over eight books (all but two of them unfinished) that I worked on over the years. This one is the best.

This is the edge of the Deep, a sunken netherworld of demons in The Guardian. The chasm itself is miles deep and as wide as a small continent, shielded from the sun by a thick bank of clouds that swirl in an endless, unnatural cycle.

Golden Dunes

Golden Dunes



This is my first Carrara rendering to feature an actual image-based terrain texture, rather than the algorithm-based shaders that are so easy with that program. It turns out that using image-based textures are just as easy in Carrara (a lot more so to handle well than in Bryce). I was really pleased with the result on this one, which came from Mayang's Free Texture Library, a great resource for images to use as textures.

I learned a few other new techniques that went into the creation of this image, too -- more lighting tricks, as well as the way that distance haze is invoked. The end effect reminds me of the lands around Dalmasca in Final Fantasy XII (which was an unintended side-effect but seems pretty cool).

Thursday, January 17, 2008

Chapter 12 completed

Well, today was certainly a record -- though to be fair, it was third-draft revision, not first-draft writing. Still: thirteen and a half pages in one evening. I am very close to being done with my revising-expanding process, so that I can move on with writing the first draft of the rest of the book. This is very pleasing, to put it mildly.

The stats as of today:
-49,500 estimated words.
-58,704 actual words.
-Twelve and a portion fully-revised-and-expanded chapters (192.5 pages total).
-198 pages in all.
-Song(s) listened to while writing: Soundtrack to Jet Li's Fearless

Wednesday, January 16, 2008

Chapter 11 completed

Six and a half all-new pages today! Of course, I deleted just as much content, so my total word count dropped by about 200 words, but who cares. I'm finally done with my eleventh chapter, which is the last of the chapters that required wholesale rewriting.

My next chapter is the one that was best written prior to my last round of edits, so it should take the least amount of work. That's nine pages I should be able to fly through, relatively speaking. The shorter chapter that comes next isn't quite as good, but still doesn't require any wholesale replacement. Then I will be DONE with my revising-expanding process, and can move on with new content. I look forward to the point when the words I write will actually be added to my net wordcount. It seems like I've been working my tail off, and yet been hovering around 200 total pages for weeks.

At any rate, I'm feeling pretty jazzed. Hope your writing is going as well.

The stats as of today:
-49,500 estimated words.
-58,481 actual words.
-Eleven fully-revised-and-expanded chapters (179 pages total).
-198 pages in all.
-Song(s) listened to while writing: Remember, by Harry Nilsson

Tuesday, January 15, 2008

Autumn Storm (and progress)

Here's a new piece that I rendered today in Carrara.



Autumn Storm


As of the time of its creation, this is my favorite image that I've done in Carrara. I hope you can taste the crispness of the air, smell the tang of the storm rolling in towards you as the clouds scud across the sky. This is some of my favorite weather, and I'm really pleased to have captured it like this.

This was also my first Geocontrol terrain rendered at 4096 resolution -- makes a big difference in the realism factor, doesn't it?


Also, I managed to make four and a half pages of progress on my novel. All right!

The stats as of today:
-49,500 estimated words.
-58,647 actual words.
-Ten and a portion fully-revised-and-expanded chapters (172.5 pages total).
-198 pages in all.
-Song(s) listened to while writing: Soundtrack to Final Fantasy VII: Advent Children

The effect of expectations on percieved quality.

Here's an interesting article from Reuters about how higher wine prices boost drinking pleasure. Essentially, adults were given the same wine over and over, but told that each one cost different amounts. The adults preferred the higher priced versions, even though there was no difference. Anyone who has taken marketing knows that this effect exists -- it's the basis of all "luxury" items.

What was interesting to me in the article, however, was that they documented a physiological response in the brain. Since the people believed they were getting something better, their brain responded as if it was. Their subjective experience was very much a slave to their expectations.

This is very interesting, perhaps alarming. It might mean that the same manuscript, packaged differently, will seem better or worse to agents and editors. One version that smells of stale smoke, another that is printed on too-cheap paper, one in the wrong format, another with crazy fonts or styling or with home-made cover art included... the agent or editor is already thinking they are dealing with someone unprofessional. Your actual writing and story would have to be pretty amazing to surpass those sorts of hurdles. Especially since they are looking at your work as part of the larger slush pile, which they expect to reject almost all of, anyway.

Just something to think about next time someone like Anne Mini is talking about reasons for having your work in standard format. It's also a good reason to exercise restraint and patience when you approach the submissions process itself. Take the time to do your homework, to proofread carefully, and to do everything else in your power to make your submission perfect. Each error makes your work seem like a cheaper wine.

Of course, we all rush to submit our very first works, don't we? That's probably why most (but not all) people don't get published until their third or fourth completed novels. I think that's just a part of the learning curve, something you have to go through that no one can talk you out of. Still, once that lesson is learned, hopefully we're all a lot more thorough the second time around.

I imagine that I have at least one reader who thinks this post is aimed at them -- it's not! This is more about general wisdom; every situation is certainly different, and sometimes people do get their first works published. Joe Haldeman did. It just doesn't happen very often, is all. Most of the other greats got lots of rejections, and not because they were any less of writers than Haldeman. Sometimes the stars align, and sometimes they don't. So it's probably good that we throw ourselves out there on our first try, perhaps a bit recklessly. Then we have a frame of reference for how to do things the next time around (presuming the stars didn't happen to align).

Sunday, January 13, 2008

Red Desert Buttes

A couple of new pieces that I did last night. Also, I did get a page of writing done on my book, which was reasonable. Weekends are slow for me, writing-wise, I'm learning. But it's good to take some time to recharge every week.



Red Desert Buttes


Dramatic sunset lighting in a butte-filled desert. This is one of the first images with buttes that I've rendered since Bryce 2.0 back in 1998. How time flies. These terrains were mapped in Geocontrol, which is why they are so much more realistic than some of the recent terrains I created in Carrara alone.



Mountaintop Range - Winter


My third version of the mountaintop range rendering. This time with snow instead of greenery, no trees or helicopter, and even more dramatic lighting. I think this is my favorite version of the three.

Saturday, January 12, 2008

Lighting up your writing

I had a bit of spare time the other day, and decided to do a bit of artwork. I haven't done any art since October or November, so it seemed about time. I've recently started using a tool called Carrara, which I find to be both more powerful and more difficult than Bryce, a tool I've used since 1998.

The switch should have been relatively smooth: Carrara has intuitive controls, a great deal many more features, and a lot more sophistication and realism than Bryce. However, there was a problem that I couldn't quite put my finger on. I was able to create images with content in forms I'd only ever dreamed of before, and it was indeed quite intuitive to do... but at the same time, something was missing in the finished products. The scenes often felt flat, dull, and less interesting than the ones I had been doing in Bryce.

This was a mystery to me for several months -- all the parts were seemingly there, so I couldn't see why everything didn't gel. I should point out at this point that I'm not a professional artist, and most of my technique is self-taught. To a professional artist, or even just someone trained in mid-level photography, the problem with my Carrara work should have been obvious: light. If you have any passing interest in art or photography, the link above is one of the best reads you may find.

Take a look at the two images below. The one on the left was rendered before I read that article, and the right-hand one was rendered after.




Pretty dramatic difference, right? The only thing changed between them is the lighting. The mountains, their "shaders," the clouds and mist -- none of that was changed one iota. Yet it looks like much of that is different, doesn't it? The mist is much more prominent in the second image, because it is caught in the path of a strong light from the left of the scene. The clouds look different (thicker and more brooding) because the sun is now positioned high in the sky, shedding a redder, more diffuse light as a counterpoint to the harsh white light from scene left. Even the mountains look different, as the deep contrast of light and shadow makes each crook and crag that much more prominent.

In every sense, light is art. Monet certainly knew this. Light is vision, after all -- at the most fundamental level, the only thing our eyes ever see is reflected light. From that perspective, of course changing the lighting of a scene will have a dramatic effect on the way that scene is viewed. Lighting effects everything from clarity to mood.

Here's where I tie this into writing -- perhaps you see the connection already. Light is to (visual) art as words are to writing, right? The wording of what we write is what separates the great writers from the merely good, and the merely good from the truly terrible. Cliches, passive voice, unneeded word repetition, awkward construction, and just plain unclear wording can kill any work -- fiction or nonfiction. It doesn't matter how brilliant or revolutionary your idea/plot/characterization is, unless you can transmit those concepts -- through your words -- to your readers.

This, of course, is old news. I presume I'm preaching to the choir, here, to pick an apt cliche. What may not be so obvious is this: poor wording problems can be remedied with editing. This is the part of the craft that has to be learned by most writers. Clear, original thinking and content -- that's the part that can't be taught. I'm not an art historian, but from what little I have read on the subject it seems that most famous artists attended some sort of art school, or studied under another artist in their time period. This was how they learned what they needed about technique, including everything that was known and relevant about light itself.

Even though these artists had presumably been walking around and "looking at stuff" their whole lives. Maybe even admiring the great art that came before them. My first point is this: a serious writer will take the time to learn the underlying craft it takes to become a true wordsmith. Practice makes perfect, but not unless you know what to practice.

But that's really my ancillary point. The true purpose of this post was that I realized something rather important with those two images of mine: in order to fix my "bland, dull" images, I just needed to put some vigor into the lighting. I have a good sense of form and composition, anyway, so that part was already pretty much set. It's the same with writing. If you have a good sense of plot and character, and have a good understanding of the basics of grammar, that's a pretty decent foundation to work from. It's like my first mountains -- deceptively empty if you're lacking the crucial elements of voice and style, but still quite recoverable. As long as you take the time to learn something about voice and style, as I finally did with regard to light.

Don't get me wrong, there are plenty of terrible writers with "great ideas" that aren't really great. That's not what I'm talking about. I'm talking about those writers with legitimately new concepts, with solid foundations, who nevertheless get rejected time and again because their work lacks pizazz, or agents just don't fall in love with it, or one of the many other euphemisms for "poor lighting." If you're one of those people, don't just keep beating your head on the wall -- practice probably won't help significantly, for the same reason that I'd have never figured out the underlying mechanisms behind lighting my mountain scene. Instead, go pick up some good writing books (I've mentioned On Writing and Don't Murder Your Mystery recently), and learn a few things you don't already know. Then come back and practice, practice, practice -- and I bet you'll see some progress.

I'll let you know if that worked for me once I find out.