From 6b23da40d66e78bac9ba036a72460dd31237212b Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Wed, 16 Apr 2014 12:18:40 -0700 Subject: [PATCH 1/5] use correct name for signal connect --- interface/src/Application.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 1fabca3711..0d0ae262a7 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -1663,7 +1663,7 @@ void Application::init() { connect(&_particleCollisionSystem, SIGNAL(particleCollisionWithVoxel(const ParticleID&, const VoxelDetail&, const CollisionInfo&)), ScriptEngine::getParticlesScriptingInterface(), - SIGNAL(particleCollisionWithVoxels(const ParticleID&, const VoxelDetail&, const CollisionInfo&))); + SIGNAL(particleCollisionWithVoxel(const ParticleID&, const VoxelDetail&, const CollisionInfo&))); connect(&_particleCollisionSystem, SIGNAL(particleCollisionWithParticle(const ParticleID&, const ParticleID&, const CollisionInfo&)), From 9ab1b76484bb38c9594df4b8af08b90f48bb9f4d Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Wed, 16 Apr 2014 13:28:54 -0700 Subject: [PATCH 2/5] use new Qt connect syntax for compile-time checks --- interface/src/Application.cpp | 14 +++++--------- 1 file changed, 5 insertions(+), 9 deletions(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index 0d0ae262a7..f0e2103743 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -1659,16 +1659,12 @@ void Application::init() { _particleCollisionSystem.init(&_particleEditSender, _particles.getTree(), _voxels.getTree(), &_audio, &_avatarManager); - // connect the _particleCollisionSystem to our script engine's ParticleScriptingInterface - connect(&_particleCollisionSystem, - SIGNAL(particleCollisionWithVoxel(const ParticleID&, const VoxelDetail&, const CollisionInfo&)), - ScriptEngine::getParticlesScriptingInterface(), - SIGNAL(particleCollisionWithVoxel(const ParticleID&, const VoxelDetail&, const CollisionInfo&))); + // connect the _particleCollisionSystem to our script engine's ParticlesScriptingInterface + connect(&_particleCollisionSystem, &ParticleCollisionSystem::particleCollisionWithVoxel, + ScriptEngine::getParticlesScriptingInterface(), &ParticlesScriptingInterface::particleCollisionWithVoxel); - connect(&_particleCollisionSystem, - SIGNAL(particleCollisionWithParticle(const ParticleID&, const ParticleID&, const CollisionInfo&)), - ScriptEngine::getParticlesScriptingInterface(), - SIGNAL(particleCollisionWithParticle(const ParticleID&, const ParticleID&, const CollisionInfo&))); + connect(&_particleCollisionSystem, &ParticleCollisionSystem::particleCollisionWithParticle, + ScriptEngine::getParticlesScriptingInterface(), &ParticlesScriptingInterface::particleCollisionWithParticle); _audio.init(_glWidget); From fe1123ea97c8d47909856432c04e52e571775e6d Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Wed, 16 Apr 2014 14:22:47 -0700 Subject: [PATCH 3/5] gun.js correctly deletes voxel again on collision --- examples/gun.js | 15 +++++++-------- 1 file changed, 7 insertions(+), 8 deletions(-) diff --git a/examples/gun.js b/examples/gun.js index 8cf6c9f654..4bfdb140b8 100644 --- a/examples/gun.js +++ b/examples/gun.js @@ -152,11 +152,10 @@ function particleCollisionWithVoxel(particle, voxel, collision) { var position = particleProperties.position; Particles.deleteParticle(particle); // Make a hole in this voxel - Vec3.print("penetration", collision.penetration); - Vec3.print("contactPoint", collision.contactPoint); - Voxels.eraseVoxel(contactPoint.x, contactPoint.y, contactPoint.z, HOLE_SIZE); - Voxels.eraseVoxel(position.x, position.y, position.z, HOLE_SIZE); - audioOptions.position = Vec3.sum(Camera.getPosition(), Quat.getFront(Camera.getOrientation())); + //Vec3.print("voxel penetration", collision.penetration); + //Vec3.print("voxel contactPoint", collision.contactPoint); + Voxels.eraseVoxel(collision.contactPoint.x, collision.contactPoint.y, collision.contactPoint.z, HOLE_SIZE); + audioOptions.position = collision.contactPoint; Audio.playSound(impactSound, audioOptions); } @@ -171,9 +170,9 @@ function particleCollisionWithParticle(particle1, particle2, collision) { // Record shot time var endTime = new Date(); var msecs = endTime.valueOf() - shotTime.valueOf(); - print("hit, msecs = " + msecs); - Vec3.print("penetration = ", collision.penetration); - Vec3.print("contactPoint = ", collision.contactPoint); + //print("hit, msecs = " + msecs); + //Vec3.print("penetration = ", collision.penetration); + //Vec3.print("contactPoint = ", collision.contactPoint); Particles.deleteParticle(particle1); Particles.deleteParticle(particle2); // play the sound near the camera so the shooter can hear it From 83dc8717aa5d210ad47ec30280edc2c8a3174830 Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Wed, 16 Apr 2014 14:46:49 -0700 Subject: [PATCH 4/5] bumpSettings on load/stop script --- interface/src/Application.cpp | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index f0e2103743..b904dfc1c1 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -1674,7 +1674,7 @@ void Application::init() { connect(_rearMirrorTools, SIGNAL(restoreView()), SLOT(restoreMirrorView())); connect(_rearMirrorTools, SIGNAL(shrinkView()), SLOT(shrinkMirrorView())); connect(_rearMirrorTools, SIGNAL(resetView()), SLOT(resetSensors())); - connect(_myAvatar, SIGNAL(transformChanged()), this, SLOT(bumpSettings())); + connect(_myAvatar, &MyAvatar::transformChanged, this, &Application::bumpSettings); } void Application::closeMirrorView() { @@ -3280,6 +3280,7 @@ void Application::stopAllScripts() { } _scriptEnginesHash.clear(); _runningScriptsWidget->setRunningScripts(getRunningScripts()); + bumpSettings(); } void Application::stopScript(const QString &scriptName) @@ -3288,6 +3289,7 @@ void Application::stopScript(const QString &scriptName) qDebug() << "stopping script..." << scriptName; _scriptEnginesHash.remove(scriptName); _runningScriptsWidget->setRunningScripts(getRunningScripts()); + bumpSettings(); } void Application::reloadAllScripts() { @@ -3403,6 +3405,7 @@ void Application::loadScript(const QString& scriptName) { // restore the main window's active state _window->activateWindow(); + bumpSettings(); } void Application::loadDialog() { From e139a6dc95492ca6b4388a4b86a620d39cec3c85 Mon Sep 17 00:00:00 2001 From: Andrew Meadows Date: Thu, 17 Apr 2014 08:46:41 -0700 Subject: [PATCH 5/5] remove warnings about signed-unsigned comparison --- interface/src/Audio.cpp | 4 ++-- interface/src/AudioReflector.cpp | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/interface/src/Audio.cpp b/interface/src/Audio.cpp index 674eaa0d70..daa7c036eb 100644 --- a/interface/src/Audio.cpp +++ b/interface/src/Audio.cpp @@ -529,7 +529,7 @@ void Audio::handleAudioInput() { _noiseSampleFrames[_noiseGateSampleCounter++] = _lastInputLoudness; if (_noiseGateSampleCounter == NUMBER_OF_NOISE_SAMPLE_FRAMES) { float smallestSample = FLT_MAX; - for (int i = 0; i <= NUMBER_OF_NOISE_SAMPLE_FRAMES - NOISE_GATE_FRAMES_TO_AVERAGE; i+= NOISE_GATE_FRAMES_TO_AVERAGE) { + for (int i = 0; i <= NUMBER_OF_NOISE_SAMPLE_FRAMES - NOISE_GATE_FRAMES_TO_AVERAGE; i += NOISE_GATE_FRAMES_TO_AVERAGE) { float thisAverage = 0.0f; for (int j = i; j < i + NOISE_GATE_FRAMES_TO_AVERAGE; j++) { thisAverage += _noiseSampleFrames[j]; @@ -706,7 +706,7 @@ void Audio::addSpatialAudioToBuffer(unsigned int sampleTime, const QByteArray& s mixedSamplesCount = (mixedSamplesCount < numSamples) ? mixedSamplesCount : numSamples; const int16_t* spatial = reinterpret_cast(spatialAudio.data()); - for (int i = 0; i < mixedSamplesCount; i++) { + for (unsigned int i = 0; i < mixedSamplesCount; i++) { int existingSample = _spatialAudioRingBuffer[i + offset]; int newSample = spatial[i]; int sumOfSamples = existingSample + newSample; diff --git a/interface/src/AudioReflector.cpp b/interface/src/AudioReflector.cpp index 9e4b97bf46..52558f1d59 100644 --- a/interface/src/AudioReflector.cpp +++ b/interface/src/AudioReflector.cpp @@ -540,7 +540,7 @@ int AudioReflector::analyzePathsSingleStep() { QVector* pathsLists[] = { &_inboundAudioPaths, &_localAudioPaths }; - for(int i = 0; i < sizeof(pathsLists) / sizeof(pathsLists[0]); i ++) { + for(unsigned int i = 0; i < sizeof(pathsLists) / sizeof(pathsLists[0]); i++) { QVector& pathList = *pathsLists[i];