init (copied from ofxAzureKinect/example-shader)
This commit is contained in:
commit
26e86edebf
10 changed files with 566 additions and 0 deletions
113
.gitignore
vendored
Normal file
113
.gitignore
vendored
Normal file
|
@ -0,0 +1,113 @@
|
||||||
|
#########################
|
||||||
|
# general patterns
|
||||||
|
#########################
|
||||||
|
|
||||||
|
docs/html
|
||||||
|
docs/tagfile.xml
|
||||||
|
|
||||||
|
*/bin/*
|
||||||
|
!*/bin/data/
|
||||||
|
|
||||||
|
# for bin folder in root
|
||||||
|
/bin/*
|
||||||
|
!/bin/data/
|
||||||
|
|
||||||
|
[Bb]uild/
|
||||||
|
[Oo]bj/
|
||||||
|
*.o
|
||||||
|
[Dd]ebug*/
|
||||||
|
[Rr]elease*/
|
||||||
|
*.mode*
|
||||||
|
*.app/
|
||||||
|
*.pyc
|
||||||
|
.svn/
|
||||||
|
|
||||||
|
#########################
|
||||||
|
# IDE
|
||||||
|
#########################
|
||||||
|
|
||||||
|
# XCode
|
||||||
|
*.pbxuser
|
||||||
|
*.perspective
|
||||||
|
*.perspectivev3
|
||||||
|
*.mode1v3
|
||||||
|
*.mode2v3
|
||||||
|
#XCode 4
|
||||||
|
xcuserdata
|
||||||
|
*.xcworkspace
|
||||||
|
|
||||||
|
# Code::Blocks
|
||||||
|
*.depend
|
||||||
|
*.layout
|
||||||
|
*.cbTemp
|
||||||
|
|
||||||
|
# Visual Studio
|
||||||
|
*.sdf
|
||||||
|
*.opensdf
|
||||||
|
*.suo
|
||||||
|
*.pdb
|
||||||
|
*.ilk
|
||||||
|
*.aps
|
||||||
|
.vs
|
||||||
|
ipch/
|
||||||
|
|
||||||
|
# Eclipse
|
||||||
|
.metadata
|
||||||
|
local.properties
|
||||||
|
.externalToolBuilders
|
||||||
|
|
||||||
|
# Codelite
|
||||||
|
*.session
|
||||||
|
*.tags
|
||||||
|
*.workspace.*
|
||||||
|
|
||||||
|
#########################
|
||||||
|
# operating system
|
||||||
|
#########################
|
||||||
|
|
||||||
|
# Linux
|
||||||
|
*~
|
||||||
|
# KDE
|
||||||
|
.directory
|
||||||
|
.AppleDouble
|
||||||
|
|
||||||
|
# OSX
|
||||||
|
.DS_Store
|
||||||
|
*.swp
|
||||||
|
*~.nib
|
||||||
|
# Thumbnails
|
||||||
|
._*
|
||||||
|
|
||||||
|
# Windows
|
||||||
|
# Windows image file caches
|
||||||
|
Thumbs.db
|
||||||
|
# Folder config file
|
||||||
|
Desktop.ini
|
||||||
|
|
||||||
|
#Android
|
||||||
|
.csettings
|
||||||
|
|
||||||
|
#########################
|
||||||
|
# packages
|
||||||
|
#########################
|
||||||
|
|
||||||
|
# it's better to unpack these files and commit the raw source
|
||||||
|
# git has its own built in compression methods
|
||||||
|
*.7z
|
||||||
|
*.dmg
|
||||||
|
*.gz
|
||||||
|
*.iso
|
||||||
|
*.jar
|
||||||
|
*.rar
|
||||||
|
*.tar
|
||||||
|
*.zip
|
||||||
|
|
||||||
|
# Logs and databases
|
||||||
|
*.log
|
||||||
|
*.sql
|
||||||
|
*.sqlite
|
||||||
|
|
||||||
|
*.qbs
|
||||||
|
*.sln
|
||||||
|
Makefile
|
||||||
|
*.vcxproj*
|
1
zoneb/addons.make
Normal file
1
zoneb/addons.make
Normal file
|
@ -0,0 +1 @@
|
||||||
|
ofxAzureKinect
|
14
zoneb/bin/data/shaders/render.frag
Normal file
14
zoneb/bin/data/shaders/render.frag
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
#version 150
|
||||||
|
|
||||||
|
// Custom attributes.
|
||||||
|
|
||||||
|
uniform sampler2DRect uColorTex; // Sampler for the color registered data
|
||||||
|
|
||||||
|
in vec2 gTexCoord;
|
||||||
|
|
||||||
|
out vec4 fragColor;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
fragColor = texture(uColorTex, gTexCoord);
|
||||||
|
}
|
41
zoneb/bin/data/shaders/render.geom
Normal file
41
zoneb/bin/data/shaders/render.geom
Normal file
|
@ -0,0 +1,41 @@
|
||||||
|
#version 150
|
||||||
|
|
||||||
|
layout (points) in;
|
||||||
|
layout (triangle_strip) out;
|
||||||
|
layout (max_vertices = 4) out;
|
||||||
|
|
||||||
|
// OF handled uniforms and attributes.
|
||||||
|
uniform mat4 projectionMatrix;
|
||||||
|
|
||||||
|
// App specific uniforms and attributes.
|
||||||
|
uniform float uSpriteSize;
|
||||||
|
|
||||||
|
in vec4 vPosition[];
|
||||||
|
in vec2 vTexCoord[];
|
||||||
|
flat in int vValid[];
|
||||||
|
|
||||||
|
out vec2 gTexCoord;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
if (vValid[0] == 0) return;
|
||||||
|
|
||||||
|
gTexCoord = vTexCoord[0];
|
||||||
|
|
||||||
|
for (int i = 0; i < gl_in.length(); ++i)
|
||||||
|
{
|
||||||
|
gl_Position = projectionMatrix * (vPosition[i] + vec4(1.0, -1.0, 0.0, 0.0) * uSpriteSize);
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
gl_Position = projectionMatrix * (vPosition[i] + vec4(1.0, 1.0, 0.0, 0.0) * uSpriteSize);
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
gl_Position = projectionMatrix * (vPosition[i] + vec4(-1.0, -1.0, 0.0, 0.0) * uSpriteSize);
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
gl_Position = projectionMatrix * (vPosition[i] + vec4(-1.0, 1.0, 0.0, 0.0) * uSpriteSize);
|
||||||
|
EmitVertex();
|
||||||
|
|
||||||
|
EndPrimitive();
|
||||||
|
}
|
||||||
|
}
|
36
zoneb/bin/data/shaders/render.vert
Normal file
36
zoneb/bin/data/shaders/render.vert
Normal file
|
@ -0,0 +1,36 @@
|
||||||
|
#version 150
|
||||||
|
|
||||||
|
// OF built-in attributes.
|
||||||
|
|
||||||
|
uniform mat4 modelViewMatrix;
|
||||||
|
|
||||||
|
// Custom attributes.
|
||||||
|
|
||||||
|
uniform sampler2DRect uDepthTex; // Sampler for the depth space data
|
||||||
|
uniform sampler2DRect uWorldTex; // Transformation from kinect depth/color space to kinect world space
|
||||||
|
|
||||||
|
uniform ivec2 uFrameSize;
|
||||||
|
|
||||||
|
out vec4 vPosition;
|
||||||
|
out vec2 vTexCoord;
|
||||||
|
flat out int vValid;
|
||||||
|
|
||||||
|
void main()
|
||||||
|
{
|
||||||
|
vTexCoord = vec2(gl_InstanceID % uFrameSize.x, gl_InstanceID / uFrameSize.x);
|
||||||
|
|
||||||
|
float depth = texture(uDepthTex, vTexCoord).x;
|
||||||
|
vec4 ray = texture(uWorldTex, vTexCoord);
|
||||||
|
|
||||||
|
vValid = (depth != 0 && ray.x != 0 && ray.y != 0) ? 1 : 0;
|
||||||
|
|
||||||
|
vec4 posWorld = vec4(1);
|
||||||
|
posWorld.z = depth * 65535.0; // Remap to float range.
|
||||||
|
posWorld.x = ray.x * posWorld.z;
|
||||||
|
posWorld.y = ray.y * posWorld.z;
|
||||||
|
|
||||||
|
// Flip X as OpenGL and K4A have different conventions on which direction is positive.
|
||||||
|
posWorld.x *= -1;
|
||||||
|
|
||||||
|
vPosition = modelViewMatrix * posWorld;
|
||||||
|
}
|
141
zoneb/config.make
Normal file
141
zoneb/config.make
Normal file
|
@ -0,0 +1,141 @@
|
||||||
|
################################################################################
|
||||||
|
# CONFIGURE PROJECT MAKEFILE (optional)
|
||||||
|
# This file is where we make project specific configurations.
|
||||||
|
################################################################################
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# OF ROOT
|
||||||
|
# The location of your root openFrameworks installation
|
||||||
|
# (default) OF_ROOT = ../../..
|
||||||
|
################################################################################
|
||||||
|
# OF_ROOT = ../../..
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT ROOT
|
||||||
|
# The location of the project - a starting place for searching for files
|
||||||
|
# (default) PROJECT_ROOT = . (this directory)
|
||||||
|
#
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_ROOT = .
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT SPECIFIC CHECKS
|
||||||
|
# This is a project defined section to create internal makefile flags to
|
||||||
|
# conditionally enable or disable the addition of various features within
|
||||||
|
# this makefile. For instance, if you want to make changes based on whether
|
||||||
|
# GTK is installed, one might test that here and create a variable to check.
|
||||||
|
################################################################################
|
||||||
|
# None
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT EXTERNAL SOURCE PATHS
|
||||||
|
# These are fully qualified paths that are not within the PROJECT_ROOT folder.
|
||||||
|
# Like source folders in the PROJECT_ROOT, these paths are subject to
|
||||||
|
# exlclusion via the PROJECT_EXLCUSIONS list.
|
||||||
|
#
|
||||||
|
# (default) PROJECT_EXTERNAL_SOURCE_PATHS = (blank)
|
||||||
|
#
|
||||||
|
# Note: Leave a leading space when adding list items with the += operator
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_EXTERNAL_SOURCE_PATHS =
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT EXCLUSIONS
|
||||||
|
# These makefiles assume that all folders in your current project directory
|
||||||
|
# and any listed in the PROJECT_EXTERNAL_SOURCH_PATHS are are valid locations
|
||||||
|
# to look for source code. The any folders or files that match any of the
|
||||||
|
# items in the PROJECT_EXCLUSIONS list below will be ignored.
|
||||||
|
#
|
||||||
|
# Each item in the PROJECT_EXCLUSIONS list will be treated as a complete
|
||||||
|
# string unless teh user adds a wildcard (%) operator to match subdirectories.
|
||||||
|
# GNU make only allows one wildcard for matching. The second wildcard (%) is
|
||||||
|
# treated literally.
|
||||||
|
#
|
||||||
|
# (default) PROJECT_EXCLUSIONS = (blank)
|
||||||
|
#
|
||||||
|
# Will automatically exclude the following:
|
||||||
|
#
|
||||||
|
# $(PROJECT_ROOT)/bin%
|
||||||
|
# $(PROJECT_ROOT)/obj%
|
||||||
|
# $(PROJECT_ROOT)/%.xcodeproj
|
||||||
|
#
|
||||||
|
# Note: Leave a leading space when adding list items with the += operator
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_EXCLUSIONS =
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT LINKER FLAGS
|
||||||
|
# These flags will be sent to the linker when compiling the executable.
|
||||||
|
#
|
||||||
|
# (default) PROJECT_LDFLAGS = -Wl,-rpath=./libs
|
||||||
|
#
|
||||||
|
# Note: Leave a leading space when adding list items with the += operator
|
||||||
|
#
|
||||||
|
# Currently, shared libraries that are needed are copied to the
|
||||||
|
# $(PROJECT_ROOT)/bin/libs directory. The following LDFLAGS tell the linker to
|
||||||
|
# add a runtime path to search for those shared libraries, since they aren't
|
||||||
|
# incorporated directly into the final executable application binary.
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_LDFLAGS=-Wl,-rpath=./libs
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT DEFINES
|
||||||
|
# Create a space-delimited list of DEFINES. The list will be converted into
|
||||||
|
# CFLAGS with the "-D" flag later in the makefile.
|
||||||
|
#
|
||||||
|
# (default) PROJECT_DEFINES = (blank)
|
||||||
|
#
|
||||||
|
# Note: Leave a leading space when adding list items with the += operator
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_DEFINES =
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT CFLAGS
|
||||||
|
# This is a list of fully qualified CFLAGS required when compiling for this
|
||||||
|
# project. These CFLAGS will be used IN ADDITION TO the PLATFORM_CFLAGS
|
||||||
|
# defined in your platform specific core configuration files. These flags are
|
||||||
|
# presented to the compiler BEFORE the PROJECT_OPTIMIZATION_CFLAGS below.
|
||||||
|
#
|
||||||
|
# (default) PROJECT_CFLAGS = (blank)
|
||||||
|
#
|
||||||
|
# Note: Before adding PROJECT_CFLAGS, note that the PLATFORM_CFLAGS defined in
|
||||||
|
# your platform specific configuration file will be applied by default and
|
||||||
|
# further flags here may not be needed.
|
||||||
|
#
|
||||||
|
# Note: Leave a leading space when adding list items with the += operator
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_CFLAGS =
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT OPTIMIZATION CFLAGS
|
||||||
|
# These are lists of CFLAGS that are target-specific. While any flags could
|
||||||
|
# be conditionally added, they are usually limited to optimization flags.
|
||||||
|
# These flags are added BEFORE the PROJECT_CFLAGS.
|
||||||
|
#
|
||||||
|
# PROJECT_OPTIMIZATION_CFLAGS_RELEASE flags are only applied to RELEASE targets.
|
||||||
|
#
|
||||||
|
# (default) PROJECT_OPTIMIZATION_CFLAGS_RELEASE = (blank)
|
||||||
|
#
|
||||||
|
# PROJECT_OPTIMIZATION_CFLAGS_DEBUG flags are only applied to DEBUG targets.
|
||||||
|
#
|
||||||
|
# (default) PROJECT_OPTIMIZATION_CFLAGS_DEBUG = (blank)
|
||||||
|
#
|
||||||
|
# Note: Before adding PROJECT_OPTIMIZATION_CFLAGS, please note that the
|
||||||
|
# PLATFORM_OPTIMIZATION_CFLAGS defined in your platform specific configuration
|
||||||
|
# file will be applied by default and further optimization flags here may not
|
||||||
|
# be needed.
|
||||||
|
#
|
||||||
|
# Note: Leave a leading space when adding list items with the += operator
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_OPTIMIZATION_CFLAGS_RELEASE =
|
||||||
|
# PROJECT_OPTIMIZATION_CFLAGS_DEBUG =
|
||||||
|
|
||||||
|
################################################################################
|
||||||
|
# PROJECT COMPILERS
|
||||||
|
# Custom compilers can be set for CC and CXX
|
||||||
|
# (default) PROJECT_CXX = (blank)
|
||||||
|
# (default) PROJECT_CC = (blank)
|
||||||
|
# Note: Leave a leading space when adding list items with the += operator
|
||||||
|
################################################################################
|
||||||
|
# PROJECT_CXX =
|
||||||
|
# PROJECT_CC =
|
8
zoneb/icon.rc
Normal file
8
zoneb/icon.rc
Normal file
|
@ -0,0 +1,8 @@
|
||||||
|
// Icon Resource Definition
|
||||||
|
#define MAIN_ICON 102
|
||||||
|
|
||||||
|
#if defined(_DEBUG)
|
||||||
|
MAIN_ICON ICON "icon_debug.ico"
|
||||||
|
#else
|
||||||
|
MAIN_ICON ICON "icon.ico"
|
||||||
|
#endif
|
11
zoneb/src/main.cpp
Normal file
11
zoneb/src/main.cpp
Normal file
|
@ -0,0 +1,11 @@
|
||||||
|
#include "ofApp.h"
|
||||||
|
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
ofGLFWWindowSettings settings;
|
||||||
|
settings.setGLVersion(3, 2);
|
||||||
|
settings.setSize(1280, 720);
|
||||||
|
ofCreateWindow(settings);
|
||||||
|
|
||||||
|
ofRunApp(new ofApp());
|
||||||
|
}
|
164
zoneb/src/ofApp.cpp
Normal file
164
zoneb/src/ofApp.cpp
Normal file
|
@ -0,0 +1,164 @@
|
||||||
|
#include "ofApp.h"
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::setup()
|
||||||
|
{
|
||||||
|
//ofSetLogLevel(OF_LOG_VERBOSE);
|
||||||
|
|
||||||
|
ofLogNotice(__FUNCTION__) << "Found " << ofxAzureKinect::Device::getInstalledCount() << " installed devices.";
|
||||||
|
|
||||||
|
// Open Kinect.
|
||||||
|
if (this->kinectDevice.open())
|
||||||
|
{
|
||||||
|
auto kinectSettings = ofxAzureKinect::DeviceSettings();
|
||||||
|
kinectSettings.updateIr = false;
|
||||||
|
kinectSettings.updateColor = true;
|
||||||
|
kinectSettings.colorResolution = K4A_COLOR_RESOLUTION_1080P;
|
||||||
|
kinectSettings.updateVbo = false;
|
||||||
|
this->kinectDevice.startCameras(kinectSettings);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Load shader.
|
||||||
|
auto shaderSettings = ofShaderSettings();
|
||||||
|
shaderSettings.shaderFiles[GL_VERTEX_SHADER] = "shaders/render.vert";
|
||||||
|
shaderSettings.shaderFiles[GL_GEOMETRY_SHADER] = "shaders/render.geom";
|
||||||
|
shaderSettings.shaderFiles[GL_FRAGMENT_SHADER] = "shaders/render.frag";
|
||||||
|
shaderSettings.bindDefaults = true;
|
||||||
|
if (this->shader.setup(shaderSettings))
|
||||||
|
{
|
||||||
|
ofLogNotice(__FUNCTION__) << "Success loading shader!";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Setup vbo.
|
||||||
|
std::vector<glm::vec3> verts(1);
|
||||||
|
this->vbo.setVertexData(verts.data(), verts.size(), GL_STATIC_DRAW);
|
||||||
|
|
||||||
|
this->pointSize = 1.0f;
|
||||||
|
this->useColorSpace = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::exit()
|
||||||
|
{
|
||||||
|
this->kinectDevice.close();
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::update()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::draw()
|
||||||
|
{
|
||||||
|
ofBackground(0);
|
||||||
|
|
||||||
|
if (this->kinectDevice.isStreaming())
|
||||||
|
{
|
||||||
|
this->cam.begin();
|
||||||
|
ofEnableDepthTest();
|
||||||
|
|
||||||
|
ofDrawAxis(100.0f);
|
||||||
|
|
||||||
|
ofPushMatrix();
|
||||||
|
ofRotateXDeg(180);
|
||||||
|
|
||||||
|
this->shader.begin();
|
||||||
|
this->shader.setUniform1f("uSpriteSize", this->pointSize);
|
||||||
|
|
||||||
|
int numPoints;
|
||||||
|
|
||||||
|
if (this->useColorSpace)
|
||||||
|
{
|
||||||
|
this->shader.setUniformTexture("uDepthTex", this->kinectDevice.getDepthInColorTex(), 1);
|
||||||
|
this->shader.setUniformTexture("uWorldTex", this->kinectDevice.getColorToWorldTex(), 2);
|
||||||
|
this->shader.setUniformTexture("uColorTex", this->kinectDevice.getColorTex(), 3);
|
||||||
|
this->shader.setUniform2i("uFrameSize", this->kinectDevice.getColorTex().getWidth(), this->kinectDevice.getColorTex().getHeight());
|
||||||
|
|
||||||
|
numPoints = this->kinectDevice.getColorTex().getWidth() * this->kinectDevice.getColorTex().getHeight();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
this->shader.setUniformTexture("uDepthTex", this->kinectDevice.getDepthTex(), 1);
|
||||||
|
this->shader.setUniformTexture("uWorldTex", this->kinectDevice.getDepthToWorldTex(), 2);
|
||||||
|
this->shader.setUniformTexture("uColorTex", this->kinectDevice.getColorInDepthTex(), 3);
|
||||||
|
this->shader.setUniform2i("uFrameSize", this->kinectDevice.getDepthTex().getWidth(), this->kinectDevice.getDepthTex().getHeight());
|
||||||
|
|
||||||
|
numPoints = this->kinectDevice.getDepthTex().getWidth() * this->kinectDevice.getDepthTex().getHeight();
|
||||||
|
}
|
||||||
|
|
||||||
|
this->vbo.drawInstanced(GL_POINTS, 0, 1, numPoints);
|
||||||
|
this->shader.end();
|
||||||
|
ofPopMatrix();
|
||||||
|
this->cam.end();
|
||||||
|
}
|
||||||
|
|
||||||
|
ofDrawBitmapStringHighlight(ofToString(ofGetFrameRate(), 2) + " FPS", 10, 20);
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::keyPressed(int key)
|
||||||
|
{
|
||||||
|
if (key == OF_KEY_UP)
|
||||||
|
{
|
||||||
|
this->pointSize *= 2;
|
||||||
|
}
|
||||||
|
else if (key == OF_KEY_DOWN)
|
||||||
|
{
|
||||||
|
this->pointSize /= 2;
|
||||||
|
}
|
||||||
|
else if (key == ' ')
|
||||||
|
{
|
||||||
|
this->useColorSpace ^= 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::keyReleased(int key)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::mouseMoved(int x, int y)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::mouseDragged(int x, int y, int button)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::mousePressed(int x, int y, int button)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::mouseReleased(int x, int y, int button)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::mouseEntered(int x, int y)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::mouseExited(int x, int y)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::windowResized(int w, int h)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::gotMessage(ofMessage msg)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
//--------------------------------------------------------------
|
||||||
|
void ofApp::dragEvent(ofDragInfo dragInfo)
|
||||||
|
{
|
||||||
|
}
|
37
zoneb/src/ofApp.h
Normal file
37
zoneb/src/ofApp.h
Normal file
|
@ -0,0 +1,37 @@
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "ofMain.h"
|
||||||
|
|
||||||
|
#include "ofxAzureKinect.h"
|
||||||
|
|
||||||
|
class ofApp
|
||||||
|
: public ofBaseApp
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
void setup();
|
||||||
|
void exit();
|
||||||
|
|
||||||
|
void update();
|
||||||
|
void draw();
|
||||||
|
|
||||||
|
void keyPressed(int key);
|
||||||
|
void keyReleased(int key);
|
||||||
|
void mouseMoved(int x, int y);
|
||||||
|
void mouseDragged(int x, int y, int button);
|
||||||
|
void mousePressed(int x, int y, int button);
|
||||||
|
void mouseReleased(int x, int y, int button);
|
||||||
|
void mouseEntered(int x, int y);
|
||||||
|
void mouseExited(int x, int y);
|
||||||
|
void windowResized(int w, int h);
|
||||||
|
void dragEvent(ofDragInfo dragInfo);
|
||||||
|
void gotMessage(ofMessage msg);
|
||||||
|
|
||||||
|
private:
|
||||||
|
ofxAzureKinect::Device kinectDevice;
|
||||||
|
ofEasyCam cam;
|
||||||
|
ofVbo vbo;
|
||||||
|
ofShader shader;
|
||||||
|
|
||||||
|
float pointSize;
|
||||||
|
bool useColorSpace;
|
||||||
|
};
|
Loading…
Reference in a new issue