double invAspect = viewportHeight / viewportWidth; double size; Vector2 scale = new Vector2(); double halfViewportWidth = viewportWidth / 2; double halfViewportHeight = viewportHeight / 2; for (i = 0; i < numLensFlares; i++) { size = 16 / viewportHeight; scale.setX(size * invAspect); scale.setY(size); GLES20.glUniform2fv(muScaleHandle, 1, new float[] { (float) scale.getX(), (float) scale.getY() }, 0); GLES20.glUniform3fv(muScreenPositionHandle, 1, new float[] { (float) screenPosition.x, (float) screenPosition.y, (float) screenPosition.z }, 0); scale.setX(size * invAspect); scale.setY(size); GLES20.glUniform2fv(muScaleHandle, 1, new float[] { (float) scale.getX(), (float) scale.getY() }, 0); GLES20.glUniform1f(muRotationHandle, (float) sprite.getRotation());
field.set(obj, new Vector2(val.replaceAll("\\s", REPLACE_EMPTY).split(",")));
vert.textureCoordinate.setAll(Float.parseFloat(parts.nextToken()), Float.parseFloat(parts.nextToken()));
double invAspect = viewportHeight / viewportWidth; double size; Vector2 scale = new Vector2(); double halfViewportWidth = viewportWidth / 2; double halfViewportHeight = viewportHeight / 2; for (i = 0; i < numLensFlares; i++) { size = 16 / viewportHeight; scale.setX(size * invAspect); scale.setY(size); GLES20.glUniform2fv(muScaleHandle, 1, new float[] { (float) scale.getX(), (float) scale.getY() }, 0); GLES20.glUniform3fv(muScreenPositionHandle, 1, new float[] { (float) screenPosition.x, (float) screenPosition.y, (float) screenPosition.z }, 0); scale.setX(size * invAspect); scale.setY(size); GLES20.glUniform2fv(muScaleHandle, 1, new float[] { (float) scale.getX(), (float) scale.getY() }, 0); GLES20.glUniform1f(muRotationHandle, (float) sprite.getRotation());
private void initialize() { mStartFOV = mFieldOfView; mLookAtEnabled = true; setLookAt(0, 0, 0); mEmpty = new Object3D(); mScratchMatrix = new Matrix4(); mScratchVector = new Vector3(); mCameraStartPos = new Vector3(); mPrevSphereCoord = new Vector3(); mCurrSphereCoord = new Vector3(); mPrevScreenCoord = new Vector2(); mCurrScreenCoord = new Vector2(); mStartOrientation = new Quaternion(); mCurrentOrientation = new Quaternion(); }
vert.textureCoordinate.setAll(Float.parseFloat(parts.nextToken()), Float.parseFloat(parts.nextToken()));
private void applyRotation() { if (mIsRotating) { mapToSphere((float) mPrevScreenCoord.getX(), (float) mPrevScreenCoord.getY(), mPrevSphereCoord); mapToSphere((float) mCurrScreenCoord.getX(), (float) mCurrScreenCoord.getY(), mCurrSphereCoord); Vector3 rotationAxis = mPrevSphereCoord.clone(); rotationAxis.cross(mCurrSphereCoord); rotationAxis.normalize(); double rotationAngle = Math.acos(Math.min(1, mPrevSphereCoord.dot(mCurrSphereCoord))); mCurrentOrientation.fromAngleAxis(rotationAxis, MathUtil.radiansToDegrees(rotationAngle)); mCurrentOrientation.normalize(); Quaternion q = new Quaternion(mStartOrientation); q.multiply(mCurrentOrientation); mEmpty.setOrientation(q); } }
field.set(obj, new Vector2(val.replaceAll("\\s", REPLACE_EMPTY).split(",")));
private void initialize() { mStartFOV = mFieldOfView; mLookAtEnabled = true; setLookAt(0, 0, 0); mEmpty = new Object3D(); mScratchMatrix = new Matrix4(); mScratchVector = new Vector3(); mCameraStartPos = new Vector3(); mPrevSphereCoord = new Vector3(); mCurrSphereCoord = new Vector3(); mPrevScreenCoord = new Vector2(); mCurrScreenCoord = new Vector2(); mStartOrientation = new Quaternion(); mCurrentOrientation = new Quaternion(); }
private void applyRotation() { if (mIsRotating) { mapToSphere((float) mPrevScreenCoord.getX(), (float) mPrevScreenCoord.getY(), mPrevSphereCoord); mapToSphere((float) mCurrScreenCoord.getX(), (float) mCurrScreenCoord.getY(), mCurrSphereCoord); Vector3 rotationAxis = mPrevSphereCoord.clone(); rotationAxis.cross(mCurrSphereCoord); rotationAxis.normalize(); double rotationAngle = Math.acos(Math.min(1, mPrevSphereCoord.dot(mCurrSphereCoord))); mCurrentOrientation.fromAngleAxis(rotationAxis, MathUtil.radiansToDegrees(rotationAngle)); mCurrentOrientation.normalize(); Quaternion q = new Quaternion(mStartOrientation); q.multiply(mCurrentOrientation); mEmpty.setOrientation(q); } }