Pro PointCloud 2 – Retail Installer Download

(All files checked against 50+ virus scanners at

Interested in beta testing Brekel Body v3?

– realtime skeleton data fusion from multiple sensors on one or more networked machines
– free to test for all existing Brekel customers
– check here


Error at startup?

Try installing the x64 Microsoft C++ redistributables.

Main installer 64 bit versions

(Note: only versions 2.24 – 2.56 were tested with Multi Sensor Alpha)

v2.63 64bit
v2.62 64bit
v2.61 64bit
v2.60 64bit
v2.59 64bit
v2.58 64bit
v2.57 64bit
v2.56 64bit
v2.55 64bit
v2.54 64bit
v2.53 64bit
v2.52 64bit
v2.51 64bit
v2.50 64bit
v2.49 64bit
v2.48 64bit
v2.47 64bit
v2.46 64bit
v2.45 64bit
v2.44 64bit
v2.43 64bit
v2.42 64bit
v2.41 64bit
v2.40 64bit
v2.39 64bit
v2.38 64bit
v2.37 64bit
v2.36 64bit
v2.35 64bit
v2.34 64bit
v2.33 64bit
v2.32 64bit
v2.31 64bit
v2.30 64bit
v2.29 64bit
v2.28 64bit
v2.27 64bit
v2.26 64bit
v2.25 64bit
v2.24 64bit
v2.23 64bit
v2.22 64bit
v2.21 64bit
v2.20 64bit
v2.19 64bit
v2.18 64bit
v2.17 64bit
v2.16 64bit
v2.15 64bit
v2.14 64bit
v2.13 64bit
v2.12 64bit
v2.11 64bit
v2.10 64bit
v2.09 64bit
v2.08 64bit
v2.07 64bit
v2.06 64bit
v2.05 64bit
v2.04 64bit
v2.03 64bit
v2.02 64bit
v2.01 64bit
v2.00 64bit



(also included with installer)



- updated to latest Orbbec Astra SDK

- fixed issue with driver check if your "program files" folder was not on the C drive
- updated to latest RealSense v2.10.2 SDK

- depth/IR lens intrinsics (from the SDK) are now printed to the console/log at startup for Kinect v2 sensors
  - advanced users can use this to undistort EXR depth images in apps like Nuke/Fusion and such
- maintenance release
- upgraded internal libraries for latest security and performance updates
- now compiled with visual studio 2017

- increased number of digits in GUI for sensor transform
- fixed crash at startup for Intel D435 cameras
  - it only supports greyscale IR (D415 also supports RGB IR)
- fixed crash on Intel 300 cameras
  - when the app was previously using a higher depth/IR resolution than 640x480 initialization would crash on 300 series

- switched to latest Orbbec SDK
  - fixing issue with some reporting errors loading "OrbbecBodyTracking.dll"
  - also no longer need to differentiate between an Orbbec Asta Pro and regular Orbbec Astra sensor now
- dropped support for Intel RealSense 200 series sensors
  - since they are no longer available, and no longer supported by Intel's recent SDKs
- disabled writing BPC in separate background thread for now as it was causing some issues (on Orbbec sensors)

- fixed a crash in the BPC loaded for some files with missing or corrupt audio data
- fixed reverse order of UVs when using triangles with Alembic
  - note that triangle "merge points" doesn't work well
  - results are much smoother with quads in general
- added some code to prevent writing invalid indices to OBJ files
- added ability to save vertex colors in OBJ files
  - note that not all 3D apps support reading those
- when using "Record Triggering" the "Append Date/Time" is now respected when it's enabled on the Master 
- fixed crash log files as some filetypes were giving issues with the new mail server
- fixed issue with batch processor not respecting Alembic Geometry/Points setting
- fixed a crash when no license file was found
- moved BPC into it's own thread so it can write frames while the next one is being fetched
  - to potentially prevent dropped frames on multi core systems
- when BPC file isn't found at startup the GUI widget will now be cleared
- added support for new Intel RealSense D415 and D435 sensors
  - note that it seems the higher framerates can be limited in the drivers if not enough light is available for auto exposure
- installer now includes Microsoft Visual Studio 2013 & 2012 C++ redistributables (2015 already included)

- body clipping is now supported on Orbbec Astra sensors (using their beta body tracker)
  - note that this only works on newly recorded files
- updated internal libraries to latest version to take advantage of latest
  - performance updates
  - security updates

- fixed a memory managment issue with the Unity BRF loader plugin that could cause crashes when deallocation buffers
- Unity script now warns user (in console) if buffers could not be created and suggests to turn of V-sync or asynchronous loading to resolve

- added video & depth fps indicators on the main 3D viewport
- in case there are dropped frames during recording this is now displayed in the main 3D viewport
  - this could happen due to a slow system, slow disk (due too fragmentation or other programs accessing it at the same time)
  - note that by default the  "Resync Dropped Frames" function will automatically duplicate frames during export
- Start/Stop recording button is now always visible even in a small GUI where scrollbars are present

- changed the "Fill Small Gaps" algorithm a bit, should work better now with single pixel holes
- added a "defaults" button on the filtering tab so reset filter values

- added logger class
  - the info from the black console window is now displayed in a logging window in the GUI of the app
  - logging info is also saved to a log file (in your My Documents folder)
- "Auto Filename" is now renamed to "Append Data/Time"
  - it will now always respect the manually set filename
  - and when turned ON simply append the date/time to it  
- moved filters on the file tab to their own collapsable section in the GUI
- fixed crash with Alembic HDF5 compression

- sensor position/rotation is now displayed in the File tab
- Alembic mesh transform now uses the sensor transform and is no longer at the origin
- Alembic exporter now writes at 60 fps if that was used for depth resolution on Intel RealSense sensors
- Alembic now has the option to choose between saving a Mesh or Points (particles)
  - note that Alembic does not support exporting UVs and/or colors for points
  - note that importing points from an Alembic are not supported by all 3D applications
    - Autodesk Maya / Max do NOT support it
	- Houdini and Cinema4D DO support it
- updated to Alembic 1.7.2

- solved some recording related crashes on Orbbec and Intel sensors
- updated how installer downloads the latest Orbbec drivers when option is enabled
- installer no longer downloads/installs Kinect v2 SDK when only Orbbecc or Intel drivers are selected
- installer now shows Intel driver downloads page when Intel is selected (user needs to manually download/install the desired one(s))
- made Intel RealSense driver detection more robust

- fixed a problem with "error loading aruco130.dll" on some machines (bug was only in v2.49)

- added support for Intel RealSense cameras
  - including support for 60 frames per second mode!
  - tested with S200, F200, SR300 and ZR300 
- OBJ material definitions are now per-frame
- OBJ material definitions are now correctly referenced
- OBJ ability to use absolute or relative texture paths
- OBJ files now write UV instead of UVW (W was always 0 anyway)
- made compression of files recorded with Orbbec sensors more efficient
- Alembic now updates transform on every frame even if it didn't move
- redrawing of some of the OpenGL widget should be a bit quicker now

- OBJ files now only save MTL (material files) when the toggle in the GUI is enabled
- OBJ files now internally point to the material file according to the official file specs
- fixed a problem with Unity where it could crash when destroying a prefab instance with the plugin attached
- live background substraction usage toggle setting is now properly loaded at startup
- commandline version now properly loads cropping settings at startup
- commandline version now properly loads background substraction settings at startup

- Unity 5.6 would auto correct the shader and corrupt it, fixed it manually so it now works correctly for 5.5 & 5.6

- fixed a problem whith shifted colors on Hirez files exported to BRF when scaling points down in resolution

- fixed another possible crash when saving downscaled BRF's with "fastest" compression
- changed filter for BRF point scaler to avoid anti aliasing artifacts when scaling down
- added button to open the Unity BRF loader folder/readme

- fixed a possible crash when saving downscaled BRF's with "fastest" compression
- BRF resizing now uses a better filtering method
- updated documentation with chapter on BRF files
- "new version available" window now shows full changelog, not just the last change
- license installer should now warn if no license key file was found in a zip archive

- added option to scale down color resolution for BRF files
- added option to control color compressino quality for BRF files
- added a warning to Unity script advising to turn Vertical Sync OFF
- fixed some issues with Batch Processor not respecting some values
- improved BRF compression efficiency

- fixed a bug with BRF file headers being corrupt when exporting files with start frame being other than zero

- fixed problem with PTS (Leica) exporter where color information was not exported correctly
- fixed problem with UnityCoder exporter where color information was not exported correctly
- fixed problem with PLY exporter where vertex color information was not exported correctly

- disabled sensor transform export for Alembic as it was exporting wrong results

- fixed bug where "Trim and Recompress" would produce invalid files when used on recordings that had "Hirez Color Mode" disabled

- fixed a bug in the particle exporters that could crash when it encountered a UV outside the 0-1 space
- background substraction search now uses a block pattern instead of a cross for slightly improved quality
- added feature to Unity script to attach a transform that get's updated with the sensor translation/rotation from the file
- Alembic is now exported with sensor transform data intact in the file
- Alembic now also supports the Ogawa format, as well as the HDF5 format (which used to be the only supported one)

- solved some audio related crashes on certain machines
- output folder existence is checked before recording starts
- removed some necessary memory re-allocations in BRF reader for better efficiency
- Unity BRF script now has an option to play an audio clip along with the pointcloud
  this can be used if you've exported the audio as WAV and placed this in your Unity project

- discontinued Unity BPC loader
- added Brekel Realtime File (BRF) option and Unity script/plugin/shader
  - export your file from the base app to a BRF file
  - use the Unity BRF loader
  - much increased performance over the old BPC loader
  - support for Hirez textures utilizing the full HD video stream
  - much easier setup
    - just add the script to an empty game object
    - set file path and all shading options as script parameters
  - no additional setup steps when using multiple pointclouds in one scene
- upgraded C++ 2015 redistributable installer to SP3 to avoid problems for fresh installs

- Now supports Orbbec Asta & Astra Pro with latest drivers/SDK v0.50

- start/end for batch processing now work as expected again
- small fix to make BPC file reading more robust
- made compressed BPC files a little smaller
- fixed some multi-threading related crashes during export
- option (from the top menu) to slowly flash the sensor's LEDs during recording
- added options (in sensor tab) for controlling auto or manual exposure of the color camera
- added internal options that try harder to maintain 30 fps mode for the color camera

- "Synchronize Streams" now restarts the program as it could crash on some machines when switching in live mode
- implemented new edge filter for Live mode that produces cleaner results
- added a "Fill Small Gaps" filter in the File tab
- implemented "Background Substraction" functionality
	- learn what the background looks like, and use that to isolate foreground pixels while removing background
	- can be done in live mode
	- can be done from file
	- can be saved/loaded to/from disk
- fixed multi threaded race condition in recording code
- fixed console font size for Win10 anniversary update
- fixed an internal multithreading race condition that could potentially cause a crash

- added "File > Fix Corrupted File(s)" option to the top menu which can restore files with broken frame indexes
- fixed broken edgefilter slider on Live tab
- fixed memory leak in BPC recorder code

- fixed GUI issue where PLY texture mode could only be selected when OBJ was enabled
- fixed GUI issue where PLU U/V toggles were not enabled when texture mode was set to vertex colors

- added Hirez Color Mode for Kinect v2 sensors
  - saves the full resolution (1920x1080) color stream
  - note that this only make sense when using meshes since then you may be able to see color detail inbetween the points
- added the ability to clip points using tracked body information in post now
  - removed the option to set body clipping in the live viewport during recording
- added edge filter on file tab (higher quality than the realtime one on the Live tab)
- added smooth points filter on file tab
- audio is no longer recorded directly to a WAV file but embedded in the BPC
  - added WAV exporting capability on the File tab now
- added indication of how many MegaBytes per frame of bandwidth is used during recording
- 8-bit audio is no longer supported
- Unity BPC loader plugin
  - rewritten C++ core from the ground up with better multi threading and memory managment
  - can achieve much higher playback speeds on machines that have the resources
  - added several memory cache strategies as an option
  - now uses actual internal frame timestamps for better synchronization at playback
  - added edgefilter option so it can be adjusted on the fly to cleanup edges
  - added smoothing filter option so point smoothing can be adjusted on the fly
  - added body clipping option so clipping of bodies/backgrounds can be adjusted on the fly
  - reorganized the folder structure to be cleaner to integrate with existing projects
- support for high DPI monitors
- updated to Visual Studio 2015 & Qt 5.6
- discontinued Oculus Rift support (for now)

- added option to turn of audible beeps at recording start/stop
- Unity script now has the option to switch between using Update() or FixedUpdate()
    - test on your machine/scene what is the fastest as this can vary depending on if you're CPU or GPU bound
- Unity 32 and 64 bit plugins are now contained in the same package
    - note that a 64 bit is slightly more efficient than a 32 bit build

- Added a "Trim and Recompress" button to the File tab that allows for
	- trimming the frames of current BPC file into a new file
	- recompressing the current BPC file with new compression settings
- The "Recompress BPC files" option from the top menu (for recompressing multiple files at once)
  now also works when no live sensor is connected
- Small improvements on how camera is framed
- Audio waveform display now turns red if audio is clipped when volume is set too high
- Added a slider for adjusting the audio recording volume
- Added the option to play the audio from the selected input over the speakers
- Added a Mesh rendering option to the Unity shader
- Added option to randomize points to the Unity script
- improved speed of Unity script by moving code over from Update() to FixedUpate()
- Unity shader now has a "Stretch Threshold" parameter to cleanup noisy edges

- Added first/last frame attributes in Unity BPC loader script
- Added some speed improvements to the Unity PointCloud shader
- Added Saturation/Brightness/Contrast to the Unity PointCloud shader
- Unity Multi Point shader can now handle many more inbetween points

- Oculus Rift support got broken in previous version, fixed now
  (also tested with latest Oculus v0.70 drivers)

- fixed possible crash at startup
- frame timestamps are measured more accurately now
- Resync Dropped Frames is now more accurate
- Unity plugin/script
  - includes updated Resync Dropped Frames algorithm
  - includes Preload option to load all frames in memory at startup for quicker frame updates
  - includes setting for playback fps
  - should work correctly again when having multipe BPC pointclouds in a single scene
  - optimized some internals
- resurrected the "Synchronize Streams" options on the live panel
  - should work properly now
  - tries to keep color, points and body index streams in sync
  - note that when color switches to low light 15fps mode this will also affect the other streams negatively
- mouse-over tooltips are now opaque for better readability

- internal changes for Multi-Sensor alpha:
- some small change to update mechanism
- C++ redistributable libraries (vc_redist) are now installed in a different way

- internal changes for Multi-Sensor alpha (coming soon)
- console and GUI no longer state "Write Movie" during export when it was turned off
- slight change in how resync dropped frame numbers are calculated
- small modification on checking if update is available
- Unity script: removed references to UnityEditor so script works correctly when building a player
  (these were only used to display a warning window when no BPC file was specified)
- Unity script/plugin: rewrote part of the C++ code for improved speed (and updated script)
- Unity script/plugin: now makes use of a callback to signify when a frame has been loaded
- Unity script/plugin: removed "Asynchronous" toggle (at least for now)
- Added note to Unity script documentation to take care of 32 vs 64 bit when building a player

- "Colorize Bodies" for Depth got broken, fixed now
- "Clip Bodies" for PointCloud got broken, fixed now

- added the ability to export depth textures in OpenEXR floating point format
- video export now does it's compression on a separate thread
- MJPEG codec red & blue channels are no longer swapped
- internal memory management speed optimizations
- more work done under the hood to support the upcoming Multi Sensor add-on
- sensor transform is now correctly saved to the registry when running headless mode
- updated audio plugins
- Unity script now has an "Asynchronous" toggle, when turned ON frame loading is done in a background thread so the Unity rendering thread is not slowed down
  Note that due to the fact that no synchronization happens this is probably not the best for playing back files.
  Since it's very dependent on your hardware and Unity's running threads when a frame arrives.

- "Fix Dropped Frames" was renamed to "Resync Dropped Frames" and now has a a direct effect on the timeline (in case there were dropped frames)
- Unity script/plugin now also has a resyncDroppedFrames property, which does the same as the base app
- internal changes to Unity plugin and script so you can now have multiple different BPC files in one scene
- added functionality to recompress BPC files (from the top File menu)
- added the option to export textures to AVI movie 
  select from these codecs: XVID, MJPEG, X264, Lagarith, MPEG1, MPEG2, MPEG4, WMV, FLV, Ogg Vorbis
  (note that this may be dependent on installed codecs)

- Base application
  - added option to fix dropped frames during export by duplicating others to stay in sync
  - File>Video tab now correctly updates when scrubbing the timeline
  - added the option to export .MTL files along with OBJ files (Megacache for Unity requires this for texturing)
  - more file loading errors are now printed to the black console window as well as GUI's status bar at the bottom
  - some optimizations to improve memory re-initializations in BPC reader
  - invalid and/or infinite points should no longer be able to cause the viewport camera to become invalid
  - installer now removes files of previous version first before installing
  - texture compression on file tab toggles are now correctly saved/loaded on exit/start
- BPC file format
  - color compression can now be selected to be either "lossless" or "lossy (JPEG)"
    JPEG compression can drastically reduce file sizes
  - point compression can now either be "lossless" or "lossy"
    lossy compression is about 65% the size of losless with only a slight visual difference
  - with both color and point compression enabled a v2.19 file can be about 25% of a v2.18 file and even as little as 15% of a v2.17 file!
    old files of course still remain readable
- Unity Shader
  - added a multiPoint option in the Unity shader (switchable from the script)
    adds inbetween points (at shader time) to increase the density of the pointcloud
    there's a "Multi Amount" parameter in the shader to increase/decrease the amount
  - added a billboards option in the Unity shader (switchable from the script)
    instead of drawing points draws little billboards oriented towards the camera
    there's a "Billboard Size" parameter in the shader to scale them to your liking
    also works with the "Multi Amount" parameter
  - now integrates better with other objects (instead of always rendering on top)

- improved lossless compression for BPC format, about half the file size compared to previous versions
  - old files continue to be readable
- made Unity plugin/script more efficient, more than double the framerate now and less CPU utilization

- now comes with tools for Unity to stream BPC files directly from disk
  - uses a C++ plugin for high performance loading
  - uses a DirectX 11 shader for high performance rendering
  - check the "Unity3D" folder in the installation folder
- added option to render 3D viewport to an Oculus Rift Virtual Reality headset (tested with SDK
- added option to menu to help with manual license installation
- forcefully closing the application while in fullscreen mode could render GUI items in non-working state on next run
  fixed now, application always starts up in windowed mode
- a Network Triggered recording will now create a folder if it has to
- internal engine updates to support upcoming Multi Sensor Calibrator Alpha
- updated to Qt 5.5

- added timecode display to the timeline on the File tab
- added an option for post-transform cropping on File tab
  - originally cropping happened before transform was applied (renamed to pre-transform cropping)
  - now you have the additional option to crop again after the transform is applied
- fixed scale of Alembic output (it was 100 times too small previously)

- added an Edge Filter to the live sensor settings
  this helps to remove unwanted points due to depth sensing and color remapping inaccuracies at edges

- added a "Viewport Settings" window under the top "Settings" dropdown menu 
  allowing to customize the viewport drawing and colors
- double clicking the main viewport now toggles it being fullscreen
  can be disabled from the top "Settings" dropdown menu

- added a headless mode
	- allows running the application without a GUI
	- in case you just want a machine to be a Record Triggering slave with minimal overhead
	- see PDF documentation for commandline options
- fixed bug where Remote Trigger could fire record start signals for formats that were disabled

- the viewport is now updated less often during export to make it quicker and avoid display glitches on some machines
- "Reload last used file at startup" now works correctly with live sensor or without sensor attached
- CPU usage is now measured more accurately
- improved accuracy of time estimation during export
- dragging & dropping a BPC file onto the window, for loading it into the application, now works more robustly
- added more stability to some of the exporters and buffering code (especially for very fast disks and file formats)
- if dropped frames are detected during recording this is now printed in the widget that lists recording length
  - this could for example happen when:
    - computer is too slow
    - disk is too slow
	- another program is interfering with the recording (for example overactive security software)

- installer will now warn if not running Windows 8 / 8.1 / 10
- added support for Leica PTS pointcloud file format (with color support)

- license installation is now done with elevated administrator privileges to avoid problems on certain machines

- tips and documentation are now displayed in the statusbar when you mouse-over buttons/settings
- now provides some additional help when license extraction/copy fails

- added UnityCoder particle format
  - this 3rdparty plugin allows playback of point cloud sequences into Unity game engine
  - supports UnityCoder's proprietary binary file format for optimum speed
  - supports embedded textures
- when floor can't be detected this is now mentioned in the GUI on the Sensor tab
- changed GUI checkbox text to "flip U" and "flip V" to be more clear
- added weblink buttons for RealFlow and UnityCoder plugins
- compacted the GUI margins a bit
- increased speed for text drawing in 3D and 2D viewports

- fixed bug with floor plane detection and automatic sensor alignment

- fixed bug with audio devices not being recognized on some systems
- updated to Qt 5.4

- in live mode added the option to inverse "Clip Bodies" (same checkbox now has 3 states)
- in file mode added play/pause and rewind button
- small change to updating mechanism

- fixed small issue with recording counter introduced in last version

- fixed startup crash when no license found
- using slightly faster math to calculate depth and IR greyscales

- sensor settings now also change toolbox title information
- sensor & custom transform is now correctly applied when exporting files (works with existing recordings)
- export scale is now 100 times as big to match with Pro Body 2 data (works with existing recordings)
- custom live sensor position/rotation is now correctly loaded & applied at startup
- forced some additional Unicode compiler settings to help with foreign language Windows versions

- fixed file quad mesh drawing on graphics cards that don't support Vertex Buffer Objects
- added the ability to add noise to the points on the File tab
- no longer crashes when "Use Texture" is disabled on File tab
- added "Auto PointSize" checkbox on File tab (only applicable when not outputting mesh format)
- many things (cropping, transform etc) now display information in the tool section title bar

- includes PDF documentation (link in start menu)
- installer should now autodetect if latest drivers/SDK need to be downloaded and installed (and tick the box if needed)

- compiled against the latest official release version of the drivers/SDK
- fixed SDK version check to work with the latest driver/SDK 1409 installer (with different path)
- added Help/About

- updated to latest Kinect for Windows v2 SDK v1409
- updated to Qt 5.3.2

- fixed a crash when toggling Synchronize Streams
- fixed memory leak in geometry creation, happened when any geometry export file format was selected 
- feedback to user when no license is found is a bit more clear now

- fixed a crash when a body entered the capture space (introduced in v0.55)
- added beeps for recording start/stop
- added beeps for countdown when using start delay
- Record Triggering should now work
  can sync recording & filename between multiple ProPointCloud2 as well as Brekel Pro for Kinect v1 apps
- end frame was incorecly displayed during export when start frame was higher than 0
  (export frames weren't affected)
- batch processor can now save/load queue to a file
- batch processor window now has a progressbar
- double click on file in queue is now disabled while processing
- now has the option (toggle in top menu) to automatically slow down export when memory is running low (less than 15% memory available)

- fixed crash related to multi-threaded drawing while exporting
- fixed a crash when stopping an export midway, especially when using Alembic format
- added a batch processor GUI so you can export multiple files at once
- several minor GUI cleanup things
- lots of changes under the hood for future expansion
- now automatically checks if you're using the latest drivers/SDK

- installer now includes some missing dll files
- alembic no longer crashes when export is stopped manually
- disk speed display is smoothed better for GUI display

- fixed occasional crash when stopping recording
- fixed crash when loading a new file while one was already loaded
- added recording compression option to reduce filesize a bit
  - at the cost of lower quality 3D point information
  - quality difference is visualized in the live viewport
- added draw floor option for 3D viewports
- added sliders for cropping
- increased timout while looking for sensor at startup a bit
- cleaned up the Live GUI a bit
- added functionality to crop the pointcloud at recording (to reduce filesize)

- fixed some "crash on stop recording" issues
- memory and speed increases for loading/displaying/exporting from file
- double clicking a .BPC file in Windows Explorer should now automatically start Pro PointCloud and load the file
- removed most dependencies in BPC reader/writer class
- brought decimation slider outside of geometry tab, as it also applies to particles
- more descriptive window title, including expiration date
- icon now contains multiple resolutions so it's nicely anti-aliased on smaller sizes
- low fps warning doesn't pop up immediately now, waits for more slow frames in a row
- file overwrite warning now also works for live recordings (not just for exports)

- most frame loading errors are solved now
- if there is an error loading frames it should now be displayed in the console window
- timeline controls are now disabled during export
- timeout during sensor startup looking for active sensor is longer now

- initial public beta release