Greetings and salutations!
For this week's screenshot, a look at a few new models made for the level:
Some of those may see changes--I'm not sure that I'm happy with the normals for the stones at the upper right, for example--but I'm overall happy with them, I believe.
The week just past was perhaps a little slow; nevertheless, a number of things did get done:
Monday, March 13. 2017
Questions of UVs and the Liminals of Lights
Wandering off the (Critical) Path
With the critical path completed, the major work of the week just past was in filling out the level, both with secondary interactions--side-puzzles that grant lore, for example--and simply things to look at.
I was a little inconsistent on whether I was focussed on the functionality of this, or the appearance; some elements have place-holder models (or indeed none at all), while new models have been created for others.
The process is far from complete, I daresay, but I feel that I've made a good start!
How to Generate My UVs
One point of uncertainty that I encountered was in how to approach the UV-mapping of models that are similar but varied, and that are expected to have tiling textures; I'm thinking primarily of environment models. For example, consider a cluster of rooms in a building: each might use a common base texture tiled over its walls, but differ from the others in its dimensions or shape.
It's perhaps not a significant issue in this level, but I can see it becoming more so in later levels, whether in rooms such as described above, or the flowing expanse of a cave system.
A simple, fairly reliable method might be to model each object individually. However, this seems likely to be rather time-consuming, and rather tedious when dealing with many similar objects (such as rooms in a building).
Another approach might be to make a single template for each such type of object, then duplicate and modify it as desired, adjusting the UV map of each new object. For simpler objects this might work well. However, it may incur distortion of the mapping if not done carefully, and some less-simple changes might call for remaking the UV-map, or parts of it. And once again, the repetition in adjusting the UV-maps seems likely to become tedious.
On top of this, it seems, intuitively, that in some cases one might expect there to be a way to procedurally apply a texture to a surface, such that adjusting the object results in the texture simply tiling to fit.
And there may be such a way:
I've discovered that Blender has a "UV projection" modifier. This allows one to specify a number of "projector" objects, which are then used to project a texture onto the target object. Once the object has been adjusted to one's satisfaction, the modifier can be applied, producing a standard UV-map.
I haven't yet tested this approach extensively, and I do think that it has some drawbacks, but I suspect that it may come to prove rather useful.
Standing in the Light
Another question that presented itself was that of liminals--specifically, those places that border the regions lit by the player-light. As things stand, a model may be lit by either the sun or the player-light--not both. What then of places on the edge of the two, which the player-light should reach, but which are already lit by the sun?
I gave thought to creating a special shader for such areas, one that would include elements from the basic versions of both the sun- and player-light- shaders.
In the end, however, I decided to simply avoid letting direct sunlight fall on liminal areas. In most cases this shouldn't be a problem: with some care it should be possible to arrange that from the sun-light's perspective they be entirely or largely in shadow, whether by virtue of orientation or a shadowing object (such as a ceiling). This may then somewhat-reasonably blend into darker, player-lit areas.
It's not a perfect solution, but workable, I think.
Miscellaneous
I also spent some time cleaning up the level's cells and portals. While prototyping the level, these were set up in a somewhat slap-dash manner: working, but not pretty; in a number of places chunks of level would vanish. This has been dealt with, I believe.
Finally, I mentioned last week, I believe, that I had lightened the shadows in the sun-light shaders. While this remains, I decided to have the effect scale with distance: closer shadows are lightened, while distant ones are not. (Indeed, I went a step further and made the ambient light darken a little in the distance.) This should mean that distant areas are starkly shadowed, while things nearby remain visible.
As per usual, a fair bit more was done: a convenience feature in the editor, bug-fixing, new textures, and more besides, I believe!
That's all for this week--stay well, and thank you for reading! ^_^
With the critical path completed, the major work of the week just past was in filling out the level, both with secondary interactions--side-puzzles that grant lore, for example--and simply things to look at.
I was a little inconsistent on whether I was focussed on the functionality of this, or the appearance; some elements have place-holder models (or indeed none at all), while new models have been created for others.
The process is far from complete, I daresay, but I feel that I've made a good start!
How to Generate My UVs
One point of uncertainty that I encountered was in how to approach the UV-mapping of models that are similar but varied, and that are expected to have tiling textures; I'm thinking primarily of environment models. For example, consider a cluster of rooms in a building: each might use a common base texture tiled over its walls, but differ from the others in its dimensions or shape.
It's perhaps not a significant issue in this level, but I can see it becoming more so in later levels, whether in rooms such as described above, or the flowing expanse of a cave system.
A simple, fairly reliable method might be to model each object individually. However, this seems likely to be rather time-consuming, and rather tedious when dealing with many similar objects (such as rooms in a building).
Another approach might be to make a single template for each such type of object, then duplicate and modify it as desired, adjusting the UV map of each new object. For simpler objects this might work well. However, it may incur distortion of the mapping if not done carefully, and some less-simple changes might call for remaking the UV-map, or parts of it. And once again, the repetition in adjusting the UV-maps seems likely to become tedious.
On top of this, it seems, intuitively, that in some cases one might expect there to be a way to procedurally apply a texture to a surface, such that adjusting the object results in the texture simply tiling to fit.
And there may be such a way:
I've discovered that Blender has a "UV projection" modifier. This allows one to specify a number of "projector" objects, which are then used to project a texture onto the target object. Once the object has been adjusted to one's satisfaction, the modifier can be applied, producing a standard UV-map.
I haven't yet tested this approach extensively, and I do think that it has some drawbacks, but I suspect that it may come to prove rather useful.
Standing in the Light
Another question that presented itself was that of liminals--specifically, those places that border the regions lit by the player-light. As things stand, a model may be lit by either the sun or the player-light--not both. What then of places on the edge of the two, which the player-light should reach, but which are already lit by the sun?
I gave thought to creating a special shader for such areas, one that would include elements from the basic versions of both the sun- and player-light- shaders.
In the end, however, I decided to simply avoid letting direct sunlight fall on liminal areas. In most cases this shouldn't be a problem: with some care it should be possible to arrange that from the sun-light's perspective they be entirely or largely in shadow, whether by virtue of orientation or a shadowing object (such as a ceiling). This may then somewhat-reasonably blend into darker, player-lit areas.
It's not a perfect solution, but workable, I think.
Miscellaneous
I also spent some time cleaning up the level's cells and portals. While prototyping the level, these were set up in a somewhat slap-dash manner: working, but not pretty; in a number of places chunks of level would vanish. This has been dealt with, I believe.
Finally, I mentioned last week, I believe, that I had lightened the shadows in the sun-light shaders. While this remains, I decided to have the effect scale with distance: closer shadows are lightened, while distant ones are not. (Indeed, I went a step further and made the ambient light darken a little in the distance.) This should mean that distant areas are starkly shadowed, while things nearby remain visible.
As per usual, a fair bit more was done: a convenience feature in the editor, bug-fixing, new textures, and more besides, I believe!
That's all for this week--stay well, and thank you for reading! ^_^
Trackbacks
Trackback specific URI for this entry
No Trackbacks