![](/i/fill.gif) |
![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
This rendering was actually made a bit over a month ago, as a supplement
to my primary project of making a topographic map of Skyrim. That,
while based on a render of the game terrain data with a gradient slapped
on it to indicate elevations, is needing to be redone by hand to get
consistent-width contour lines (if I were clever, I'd probably be able
to figure out something much simpler and faster as an automated process,
but what can I say, glutton for punishment or something), so doesn't
really qualify for posting here.
This one's just a straightforward shaded relief map. It could really
use some smoothing, but the combined size of the meshes just doesn't
make that feasible (as far as I can tell).
Post a reply to this message
Attachments:
Download 'skyrim shaded relief low.jpg' (872 KB)
Preview of image 'skyrim shaded relief low.jpg'
![skyrim shaded relief low.jpg](/povray.binaries.images/attachment/%3C507bf848%40news.povray.org%3E/skyrim%20shaded%20relief%20low.jpg?ttop=443866&toff=1750&preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 15-10-2012 13:49, Tim Cook wrote:
> This one's just a straightforward shaded relief map. It could really
> use some smoothing, but the combined size of the meshes just doesn't
> make that feasible (as far as I can tell).
It is looking very good, except for the low polygon zone on the southern
border ;-)
Should make an interesting landscape.
Thomas
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Tim Cook <z99### [at] gmail com> wrote:
> This one's just a straightforward shaded relief map. It could really
> use some smoothing, but the combined size of the meshes just doesn't
> make that feasible (as far as I can tell).
Solitude's pretty prominent, isn't it? Other than that, only the hill of
Whiterun stands out as a city location... I'd like to say I can see the college
at Winterhold too, but I think that might just be my imagination.
Is this data from the map page, or the actual game world?
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
I do believe I just clicked on the 'reply' button instead of 'followup'...
...again.
Really dislike that 'feature' of Thunderbird.
I think the data I pulled is the level-of-detail terrain data from
in-game, one or another of which is used as the world-map as well...?
I'm of half a mind to take and scale the meshes so they match what I've
been able to discern of 'real' distances for things; they're squished
about 10x laterally and stretched 10x vertically, so when you correct
for that, Skyrim's a lot flatter. (It's about 250 lore-canon miles from
Dawnstar to Windhelm, or something like that...? Whereas in-game, if
you use their 128 units = 6 feet, it's only about 25 miles. And the
Throat of the World is iirc 52 miles high--again with the 128 units to 6
feet measure.)
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Tim Cook <z99### [at] gmail com> wrote:
> This rendering was actually made a bit over a month ago, as a supplement
> to my primary project of making a topographic map of Skyrim. That,
> while based on a render of the game terrain data with a gradient slapped
> on it to indicate elevations, is needing to be redone by hand to get
> consistent-width contour lines (if I were clever, I'd probably be able
> to figure out something much simpler and faster as an automated process,
> but what can I say, glutton for punishment or something), so doesn't
> really qualify for posting here.
Try out the following if/when you have a chance:
#declare NLines = 10; // number of elevation lines
#declare LineSize = 2; // line size in pixels (1.0-2.0)
#declare LineOffs = 0; // line offset (phase)(0.0-1.0)
// your input pigment
#declare PgInput =
pigment{
bumps
turbulence .5
lambda 2.5
}
#declare FInput =
function{
pattern{
pigment_pattern{
PgInput
phase LineOffs/NLines
color_map{
#for(V, 0, NLines)
[V/NLines rgb (mod(V,2)=0)]
[V/NLines+1/NLines rgb (mod(V,2)=0)]
#end
}
}
}
}
#declare FSpherical = function{pattern{spherical}}
#declare PgElevationLines =
pigment{
#declare LineSizeX = LineSize/image_width;
#declare LineSizeY = LineSize/image_height;
function{
FSpherical(
FInput(x+LineSizeX, y, 0)-FInput(x-LineSizeX, y, 0),
FInput(x, y+LineSizeY, 0)-FInput(x, y-LineSizeY, 0),
0
)
}
}
plane{z,0
pigment{PgElevationLines}
}
It's really only good for line thicknesses between 1-2 pixels, but at least the
lines are of an even width. Antialiasing is recommended. Hope it helps!
Sam
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Samuel Benge" <stb### [at] hotmail com> wrote:
> It's really only good for line thicknesses between 1-2 pixels, but at least the
> lines are of an even width. Antialiasing is recommended. Hope it helps!
Here's a version using an improved method. Elevation lines of any thickness will
be drawn properly, at the expense of PPS:
#declare NLines = 10; // number of "elevation" lines
#declare LineSize = 3; // line size in pixels (1.0-?)
#declare LineOffs = 0; // line offset (phase)(0.0-1.0)
#declare LineRes = LineSize*16; // number of line samples (1=?)
// input pigment
#declare PgInput =
pigment{
bumps
turbulence .5
lambda 2.5
}
#declare FInput =
function{
pattern{
pigment_pattern{
PgInput
phase LineOffs/NLines
color_map{
#for(V, 0, NLines)
[V/NLines rgb (mod(V,2)=0)]
[V/NLines+1/NLines rgb (mod(V,2)=0)]
#end
}
}
}
}
#macro SampleLoop()
#for(N, 1, LineRes)
#local C = 1/LineRes*N;
#local R = pow(C*sqrt(N)/pow(LineRes,.5),1/3);
#local Angle = N*137.508;
#local Pt = vrotate(y*R, z*Angle);
#local PtX = Pt.x*LineSizeX;
#local PtY = Pt.y*LineSizeY;
, FInput(x+PtX, y+PtY, 0)
#end
#end
#declare PgElevationLines =
pigment{
#declare LineSizeX = LineSize/image_width;
#declare LineSizeY = LineSize/image_height;
function{
min(1 SampleLoop())*(FInput(x, y, 0)=1)
+
(1-max(0 SampleLoop()))*(FInput(x, y, 0)=0)
}
}
plane{z, 0
pigment{PgElevationLines}
}
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
I believe the code has reached its final state. Elevation lines are now mapped
correctly starting at elevation=0.0. Included is an option for using smoothed
lines or not, and it's all wrapped up nicely into a macro that produces a
pigment_pattern.
Use it or don't; I always script for fun :)
http://news.povray.org/povray.text.scene-files/thread/%3Cweb.507c9bbc53181abf2165ae730%40news.povray.org%3E/
Sam
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
"Samuel Benge" <stb### [at] hotmail com> wrote:
> I believe the code has reached its final state.
Attached is an image rendered from the example scene, using eight elevation
lines. An acceptable result, IIDSSMS, although calculating the number of lines
needed for real-world data might prove to be somewhat of a challenge!
Post a reply to this message
Attachments:
Download 'elevationlines.png' (119 KB)
Preview of image 'elevationlines.png'
![elevationlines.png](/povray.binaries.images/attachment/%3Cweb.507ca0ecf9ac85a3721473b50%40news.povray.org%3E/elevationlines.png?ttop=443866&toff=1750&preview=1)
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
Needs a bit of fiddling (go right-hand rule!) and POV 3.7 to work, but...
...need to figure out proper scaling and offset, but I think that just
might let me bypass another month of hand-drawing contour lines.
Thanks!
--
Tim Cook
http://empyrean.sjcook.com
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
On 16-10-2012 1:36, Samuel Benge wrote:
> I believe the code has reached its final state. Elevation lines are now mapped
> correctly starting at elevation=0.0. Included is an option for using smoothed
> lines or not, and it's all wrapped up nicely into a macro that produces a
> pigment_pattern.
>
> Use it or don't; I always script for fun :)
>
>
http://news.povray.org/povray.text.scene-files/thread/%3Cweb.507c9bbc53181abf2165ae730%40news.povray.org%3E/
>
Incredible, Sam. This can be a very useful feature. I shall certainly
use it. Thanks indeed.
Thomas
Post a reply to this message
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |
| ![](/i/fill.gif) |
|
![](/i/fill.gif) |
|
![](/i/fill.gif) |
| ![](/i/fill.gif) |