CHANGELOG
Development branch
- Python client 1.3.0 (2026-08-27; no UnrealCV plugin/server tag)
Add Python wrappers for the complete Windows shared-memory camera and scene-occupancy command surface exposed by the UnrealCV Plus server.
Add shared-memory support for MQRC lit/panoramic and lidar camera captures, including no-argument and sized panoramic forms.
Add configurable UnrealCV server ports through
unrealcv.ini,-cvport=and-UnrealCVPort=with a default of9000.Fix Plus API initialization when the generated object-list overload is called without filter arguments.
- v1.1.0 (2026-08-12)
Modernize the UnrealCV plugin and server for the Unreal Engine 5 development line.
Add optical-flow capture and expand camera projection and capture controls, including image size, capture source, exposure, motion blur, focal distance, and depth of field.
Add local Windows shared-memory transport for lit, depth, normal, and object-mask images, with structured metadata describing each frame.
Add camera spawning, explicit-position object and cube spawning, skeletal and poseable-mesh bone queries, material inspection and assignment, object labels, class queries, destruction, bounds, scale, and other object controls.
Add runtime command discovery through
vget /unrealcv/commands, live console command completion, and reflection-based property and function inspection throughvreflect.Add generated command-schema and documentation-coverage checks, together with workflow tooling for building, launching, monitoring, testing, and benchmarking UnrealCV environments.
Expand the Python client with a typed high-level API, structured models, capability checks, improved reconnect and error handling, modern packaging, and broader transport and API regression tests.
Harden TCP disconnect, reset, framing, dispatch, and null-state handling; add bind-address, authentication, and command-policy controls.
This tag marks the UnrealCV plugin/server 1.1.0 baseline. The Python client state is included as of this commit, but its package metadata is not asserted to match the server version.
- v1.0.1 (2023-07-13)
Collect the UnrealCV development work accumulated since v0.3.10 into a new plugin release line.
Introduce the component-based camera and sensor architecture, including multiple-camera, stereo, and fusion-camera workflows.
Expand sensing modes with lit, depth, normal, annotation, vertex, bone, and transparent-object depth capture.
Add
DataCaptureActorandPuppeteerworkflows for synchronized scene, camera, animation, pose, vertex, and image-data collection.Expand camera controls for field of view, image size, movement, pose, projection data, and additional capture formats.
Expand object controls for spawning, renaming, scale, bounds, visibility, transforms, and annotation color.
Add same-frame batched command execution and Blueprint function invocation through
vbp.Add Linux communication support, configurable server ports through
-cvport, and runtime texture loading from files.Reorganize the C++ plugin into sensor, controller, server, actor, and utility modules, and refresh the Python client and documentation.
Projects that include UnrealCV internal C++ headers or depend on legacy capture and sensor classes should review the renamed and removed interfaces before upgrading.
- Python client 0.4.0 (2019-07-15; no UnrealCV plugin/server tag)
Update the Python package version from 0.3.10 to 0.4.0.
Add batch command execution support during this development period and fix a compilation issue caused by branch restructuring.
The UnrealCV plugin/server version remained 0.3.10; this is documented separately rather than represented by a
v0.4.0plugin tag.
- v0.3.10
- Commands contributed in pull request #91, authored by @bennihepp
Add
vget /camera/[id]/pose,vset /camera/[id]/poseAdd
vget/vset /camera/[id]/horizontal_fieldofviewAdd
vget /camera/[id]/vis_depth npyandvget /camera/[id]/plane_depth npyAdd
vset /object/[id]/show,vset /object/[id]/hideAdd
vset /action/input/enable,vset /action/input/disable
- Add more commands
Add
vget /object/[id]/mobility,vget /object/[id]/location,vget /object/[id]/rotationAdd
vget /camera/[id]/normal npyAdd
vset /action/eyes_distance [eye_distance]Add
vset /action/game/pause
Update the python client to support python3
Improve documentation
- v0.3.9
Fix a bug that prevents object mask generation, which is introduced in v0.3.7
Fix #53 that the painting of object does not work
Fix #49 python3 support, thanks to @jskinn and @befelix
- v0.3.8 :
Integrate cnpy into unrealcv
Add
vget /camera/depth npy, which can return tensor as a numpy binary.
- v0.3.7 :
Add
vget /camera/lit pngto retrieve binary data without saving it.
- v0.3.6 :
Change docs from markdown to reStructuredText
Add docker to automate tests
Add
vset /action/keyboard [key_name] [delta]
v0.3.5 : Add vexec to support the invocation of blueprint functions, Add
GetWorld()inFCommandHandler.v0.3.4 : Delay the object mask painting from initialization code
v0.3.3 : Add
vget /scene/name- v0.3.2 :
Add
vget /unrealcv/versionAdd
vset /action/eyes_distanceFix
vget /camera/[id]/locationto support multiple camerasUpdate test code
v0.3.1 : Fix GWorld issue
v0.3.0 - Stability improvement
Add support for Unreal 4.13, 4.14
Stability improvement, fix crash caused by the usage of GWorld
Fix some incorrect ground truth, blueprint actor not correctly displayed.
Add playground project
Add docs to docs.unrealcv.org
Add API documentation created by doxygen
Fix an issue that prevents the packaging of games.
Add vrun command to exec UE4 built-in command
API update:
vrun [built-in command]vset /camera/[id]/moveto [x] [y] [z]# With collision enabled
v0.2.0 - First public release
Features
Add communication to UE4Editor and a compiled game
Add Python and MATLAB client to communicate with UnrealCV server
Add ground truth extraction, include: depth, object-mask, surface normal
Add support for Linux, Win and Mac
Initial API, see more details in the command list
vget /objectsvget /object/[obj_name]/colorvset /object/[obj_name]/color [r] [g] [b]vget /camera/[id]/locationvget /camera/[id]/rotationvset /camera/[id]/location [x] [y] [z]vset /camera/[id]/rotation [pitch] [yaw] [roll]vget /camera/[id]/[viewmode]vget /camera/[id]/[viewmode] [filename]vset /viewmode [viewmode]vget /viewmodevget /unrealcv/statusvget /unrealcv/help
The upcoming release will follow the concept of Semantic Versioning