Take photos of your world / server!
When used on a server: no client side mods required!
Everything is rendered on the server using simple raytracing.
The mod adds a Camera Item, for clients it looks and functions like a normal spyglass but has a custom name and consumes a map item or other, as specified in the configs.
There is no recipe for the item (yet)
The config file will be created on first launch and is located in
configs/camera-obscura.json
Example config with default values:
{
"renderDistance": 128,
"showSystemMessages": false,
"renderAsyncMap": true,
"renderAsyncImage": true,
"cameraItem": "minecraft:spyglass",
"cameraConsumesItem": true,
"cameraConsumeItem": "minecraft:map",
"commandPermissionLevel": 4
}
Explanation:
renderDistance
: Render distance in blocksshowSystemMessages
: Flag wether system messages should be shown when a photo is being taken when run as commandrenderAsyncMap
: Flag to render as map items asynchronouslyrenderAsyncImage
: Flag to render PNG images asynchronouslycameraItem
: Vanilla Item to use as camera item model/texturecameraConsumesItem
: Flag if an item should be consumedcameraConsumeItem
: Item to consume when the camera item is used. No items will be consumed when ran as commandcommandPermissionLevel
: Vanilla Permission level
/camera-obscura
Takes a picture of the player running the command and gives the resulting map item to that player
/camera-obscura <[Entity|Player]> <scale>
Takes a picture as the source entity and gives the player the resulting maps, a scale of up to 3 (3x3 maps) can be specified optionally.
/camera-obscura save <scale>
Takes a picture of the player running the command and saves it as png in
renders/<imagename>.png
,
where imagename is the current date in the format
YYYY-MM-dd HH:mm:ss.SSS
.
A scale of up to 10 (1280px * 1280px) can be specified optionally.
Default image size is 128px * 128px
/camera-obscura save <Entity> <scale>
Takes a picture as the source entity and saves it as PNG with optional scale of up to 10
/camera-obscura clear-cache
Clears the cache (textures, resourcepack models and blockstate definitions, cached triangle models)
/camera-obscura clear-cache
Clears the cache (textures, resourcepack models and blockstate definitions, cached triangle models)
Default Vanilla permission level is 4, this can be configured with commandPermissionLevel For luckperms, etc. - those should be self-explanatory:
camera-obscura.command
camera-obscura.command.scale
camera-obscura.command.entity
camera-obscura.command.entity.scale
camera-obscura.command.save
camera-obscura.command.save.scale
camera-obscura.command.save.entity
camera-obscura.command.save.entity.scale
camera-obscura.clear-cache
- Entities are not rendered
- Liquids are "blocky"
- Hard lighting
- No biome water colors
- End Gateway and end portal blocks are pure black (they use the black concrete texture temporarily)
- Models that are larger than a single block can get cut-off during rendering
- Rendering breaks with coordinates in the millions
The game assets are downloaded from mojangs servers and read to render the world using raytracing.
When the render is done, a Map item with the image is created or a png is saved to the renders
folder.