![]() |
VX++ Framework (VxCpp.dll)
Friendly Voxon development with classes
|
Voxie Window Struct - Configuration for the Voxon Window. This struct manages all the settings to do with the volume. More...
#include <vxDataTypes.h>
Public Attributes | |
| int | useemu |
| value determines to render the Voxie Window on hardware or via software emulation or simulation. More... | |
| float | emuhang |
| emulator view horizontal angle expressed as radians | |
| float | emuvang |
| emulator view vertical angle expressed as radians | |
| float | emudist |
| distance for the emulator's viewpoint range is {0..2000.0} 0 = close, 2000 = furthest | |
| int | xdim |
| projector's x resolution dimensions currently needs to be 912 | |
| int | ydim |
| projector's y resolution dimensions currently needs to be 1140 | |
| int | projrate |
| projector's refresh rate in Hz range is {60..107} | |
| int | framepervol |
| number of projector's frames per volume {1..16}. example with framepervol set to 3 at projrate set to 60 render a volume at 60/3 = 20 Hz volume rate. This setting should always be at '8' on a typical VX1 setup. 60/8 = | |
| int | usecol |
| display color setting. 0 = mono white, 1 = RGB full color time multiplexed. various negative values are for full color mono -1 = red, -2 = green, -3 yellow, -4 blue, -5 magenta, -6 cyan, | |
| int | dispnum |
| number of displays to search for and use for volumetric rendering. a VX1 only uses 1 display but it is possible to create a volume using multiple displays. | |
| int | bitspervol |
| bit planes per volume written by the VoxieBox.dll. Can be useful for custom volume renderer | |
| voxie_disp_t | disp [MAXDISP] |
| An array of voxie_disp_t. These are the different display settings for each display targeted for volumetric rendering. These 'displays' are typically projectors. See voxie_disp_t for infomation of what is within this struct. | |
| int | hwsync_frame0 |
| first frame (frame is a 2D slice, a volume is created by a stack of 2D frames / slices) offset (-1 to disable sync hw). For hardware experts only let the software manage this | |
| int | hwsync_phase |
| high precision phase offset. For hardware experts only let the software manage this | |
| int | hwsync_amp [4] |
| amplitude {0..65536} for each channel. For hardware experts only let the software manage this | |
| int | hwsync_pha [4] |
| phase {0..65536} for each channel. For hardware experts only let the software manage this | |
| int | hwsync_levthresh |
| threshold ADC value for peak detection {0..1024, but typically in range: 256..512} use Host.exe to test the right level | |
| int | voxie_vol |
| amplitude scale when using sine wave audio output {0..100}. The higher the value the more max amplitude can be sent to the motors | |
| int | ilacemode |
| interlace mode: 0:default, 6:2/3 color mode;uses outcol[]) {0-7?} | |
| int | drawstroke |
| determines the drawing / rending type. 1=draw on up stroke, 2=draw on down stroke, 3=draw on both up&down | |
| int | dither |
| enable / disable dither effects 0=no dither, 1=height dither, 2=time dither, 3=height&time dither | |
| int | smear |
| enable / disable smear 1+=increase brightness in x-y at post processing (slower render), 0=not | |
| int | usekeystone |
| 0=no keystone compensation (for testing only), 1=keystone quadrilateral compensation (default) More... | |
| int | flip |
| flip coordinates in software (via voxiebox.dll) 0 = no flip, 1 = flip 90 degrees, 2 = flip 180 degrees, 3 = flip 270 degrees | |
| int | menu_on_voxie |
| 1 = display menu on voxiebox view | |
| float | aspx |
| aspect ratio of x dimension, loaded from voxiebox.ini, used by application. Values typically around 1.f | |
| float | aspy |
| aspect ratio of y dimension, loaded from voxiebox.ini, used by application. Values typically around 1.f | |
| float | aspz |
| aspect ratio of z dimension, loaded from voxiebox.ini, used by application. Values typically around .4f | |
| float | gamma |
| gamma value for interpolating many graphical draw calls | |
| float | density |
| scale factor controlling dot density of graphical draw calls (default:1.f) | |
| int | sndfx_vol |
| amplitude scale of sound effects {0..100} | |
| int | voxie_aud |
| audio channel index of motor. (Playback devices..Speakers..Configure..Audio Channels) | |
| int | excl_audio |
| enable / disable exclusive audio mode 1=exclusive audio mode (much faster & more stable sync - recommended! | |
| int | sndfx_aud [2] |
| audio channel indices of sound effects, [0]=left, [1]=right | |
| int | playsamprate |
| sample rate used by audio driver (written by voxie_init()). 0 is written if no audio channels are enabled in voxiebox.ini. | |
| int | playnchans |
| number of audio channels expected to be rendered by user audio mixer | |
| int | recsamprate |
| recording sample rate - to use, must write before voxie_init() | |
| int | recnchans |
| number of audio channels in recording callback | |
| int | isrecording |
| 0=normally, 1 when .REC file recorder is in progress (written by voxiebox.DLL) | |
| int | hacks |
| bit0!=0:exclusive mouse; bit1!=0:disable REC/TCP options under File menu (for Voxieplay) | |
| int | dispcur |
| current display selected in menus {0..dispnum-1} | |
| int | sndfx_nspk |
| variable to hold the number of physical speakers {1 = VX1 default, 2 = stereo system} | |
| int | hwdispnum |
| variable to manage the number of hardware displays | |
| float | freq |
| starting value in Hz (must be set before first call to voxie_init()); obsolete - not used by current hardware | |
| float | phase |
| phase lock {0.0..1.0} (can be updated on later calls to voxie_init()); obsolete - not used by current hardware | |
| int | thread_override_hack |
| 0:default thread behavior, 1..n:force n threads for voxie_drawspr()/voxie_drawheimap(); bound to: {1 .. #CPU cores (1 less on hw)} | |
| int | motortyp |
| 0=DCBrush+A*, 1=CP+FreqIn+A*, 2=BL_Airplane+A*, 3=VSpin1.0+CP+FreqIn, 4=VSpin1.0+BL+A4915, 5=VSpin1.0+BL+WS2408 | |
| int | clipshape |
| don't render voxels outside of shape. 0 for a rectangle (for VX1) and 1 for a circle (for Spinner) 0=rectangle (vw.aspx,vw.aspy), 1=circle (vw.aspr) | |
| int | goalrpm |
| for Spinner only. The goalrpm rate for the motor to spin up to. | |
| int | cpmaxrpm |
| for Spinner only. Maximum rotation rate the voxiebox.dll will allow the motor to spin | |
| int | ianghak |
| for Spinner only. Phase offset for rotation (0-65535) | |
| int | ldotnum |
| dot number the size of a single voxel. affects brightness. Range:{0..3}, 0=default | |
| int | normhax |
| Used by global normal shading stores the vertical and horizontal angle and amplitude : (vang/*-90..90*/<<20) + ((hang/*-180..180*/&4095)<<8) + amp/*0..255*/. 0=disable. | |
| unsigned char | upndow |
| volumetric up down sweep technique: 0=sawtooth, 1=triangle | |
| unsigned char | scrshape |
| screen shape 0=helix, 1=peanut/hurricane | |
| unsigned char | filler [2] |
| not sure need to ask Ken what this is | |
| int | nblades |
| screen shape: 0=VX1 (not spinner), 1=/|, 2=/|/|, .. | |
| int | usejoy |
| usb gamepad input API -1=none, 0=joyInfoEx (directInput), 1=XInput | |
| int | dimcaps |
| dim top & bottom by sine - up/dn (VX1) mode only. 0 is default. | |
| float | emugam |
| gamma applied to emulator rendering mode #1. Typical range: 0.25-4.0 | |
| float | asprmin |
| minimum radius; typically 0.10 | |
| float | sync_usb_offset |
| offset to USB timing (see voxiebox menu Stats..On:PDF) | |
| int | sensemask [3] |
| for multicolor/multiprojector modes: which data goes to projector. Ex (R/B mode): [0]=0xff0000, [1]=0x00ff00 | |
| int | outcol [3] |
| for multicolor/multiprojector modes: LED color of projector Ex (R/B mode): [0]=0xff0000, [1]=0x00ff00 | |
| float | aspr |
| size of radius; typically 1.41 or sqrt(2) to circumscribe square | |
| float | sawtoothrat |
| //for /|/| or /| screens; typically: 0.875, range: ~0.5-1.0 | |
Voxie Window Struct - Configuration for the Voxon Window. This struct manages all the settings to do with the volume.
Most settings to do with creating a volume are contained here. This struct is passed in when VoxieBox::init() is called. Most of these settings can be updated while the volume is rendering. Pass the voxie_wind_t struct through VoxieBox::update() for the settings to be applied to the current volume.
| int voxie_wind_t::useemu |
value determines to render the Voxie Window on hardware or via software emulation or simulation.
set values are: 0 to run on Voxon hardware, 1 = emulator perspective view (looks like authentic hardware), 2 = simulator perspective view, 3 = emulator orthogonal view, 4 = emulator orthogonal view using older, slower code.
| int voxie_wind_t::usekeystone |
0=no keystone compensation (for testing only), 1=keystone quadrilateral compensation (default)