MCPcopy Create free account
hub / github.com/OGRECave/ogre / run

Method run

Samples/AndroidJNI/AndroidTextureOES.java:146–191  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

144
145 private Runnable renderer = new Runnable() {
146 @Override
147 public void run() {
148 if (renderSessionPaused) {
149 return;
150 }
151
152 if (!windowCreated && lastSurface != null) {
153 windowCreated = true;
154
155 if (!sceneCreated) {
156 ogre.initAppForAndroid(getAssets(), lastSurface);
157 initializeScene();
158
159 if (ContextCompat.checkSelfPermission(AndroidTextureOES.this, Manifest.permission.CAMERA)
160 == PackageManager.PERMISSION_DENIED)
161 {
162 ActivityCompat.requestPermissions(AndroidTextureOES.this, new String[] {Manifest.permission.CAMERA}, 100);
163 }
164
165 final android.hardware.Camera camera = android.hardware.Camera.open();
166 try {
167 cameraTexture = new SurfaceTexture((int) textureId);
168 camera.setPreviewTexture(cameraTexture);
169 final android.hardware.Camera.Parameters params = camera.getParameters();
170 final android.hardware.Camera.Size size = params.getSupportedPreviewSizes().get(0);
171 params.setPreviewSize(size.width, size.height);
172 camera.setParameters(params);
173 camera.startPreview();
174 } catch (Exception e) {
175 throw new RuntimeException("An error occurred during camera preview initialization");
176 }
177 } else {
178 ogre.getRenderWindow()._notifySurfaceCreated(lastSurface);
179 }
180
181 handler.post(this);
182 return;
183 }
184
185 if (windowCreated) {
186 cameraTexture.updateTexImage();
187 ogre.getRoot().renderOneFrame();
188 }
189
190 handler.post(this);
191 }
192 };
193}

Callers

nothing calls this directly

Calls 8

initializeSceneMethod · 0.95
initAppForAndroidMethod · 0.80
setParametersMethod · 0.80
getRenderWindowMethod · 0.80
renderOneFrameMethod · 0.80
openMethod · 0.45
getMethod · 0.45
_notifySurfaceCreatedMethod · 0.45

Tested by

no test coverage detected