DEM : Digital Elevation Model
- Online Trial for Go Playground is now available!
RDGL can generate procedural terrains, including...
- Plain
- Valley
- Rias coast
- Continental shelf
- Mountain range
... and so on.
Seed = 8 | Seed=14 LandProportion01=1.0 |
---|---|
![]() |
![]() |
Seed = 14 LandProportion01=0.15 |
Seed = 2022 |
---|---|
![]() |
![]() |
[*] 1000x1000 (km2) terrain
package main
import output "github.com/TadaTeruki/RDGL/Output"
import rdg "github.com/TadaTeruki/RDGL"
func main(){
rdg.EnableProcessLog()
var seed int64 = 14
dem := rdg.NewDEM(seed)
dem.Generate()
output.WriteDEMtoPNGwithShadow("result.png", &dem, 300, -1, output.DefaultShadow(&dem))
// details : examples/hello_dem.go, examples/hello_dem_detailed.go, examples/write_to_png_with_shadow.go
}
examples/resources/draft.png | examples/resources/swan.png |
---|---|
![]() ![]() |
![]() ![]() |
PNG | OBJ (3D model) [*1] [*2] |
---|---|
![]() |
![]() |
[*1] displayed with https://github.com/RBFraphael/meshviewer
[*2] Elevation = x50
...
func main(){
...
output.WriteDEMtoTXT("result.txt", &dem, 1000, -1)
output.WriteDEMtoPNG("result.png", &dem, 300, -1)
output.WriteDEMtoPNGwithShadow("result1.png", &dem, 300, -1, output.DefaultShadow(&dem))
output.WriteDEMtoOBJ("result.obj", &dem, 100, -1, 5.0, false)
// details : examples/write_to_txt.go, examples/write_to_png.go,
// examples/write_to_png_with_shadow.go, examples/write_to_obj.go
}
$ go get github.com/TadaTeruki/RDGL
Documentation(English) : pkg.go.dev
Tutorial(Japanese) : Qiita
Documentation & Tutorial for other language (English/Japanese) : preparing
Author : Tada Teruki < [email protected] >
Copyright (c) 2021 Tada Teruki