小编Str*_*fex的帖子

使用OpenGL ES 2.0绘制2D图像

我一直在努力使用openGL ES 2.0 for Android从jpg/png文件中绘制2D图像.我看到的每个地方的教程都是用于纹理化3D图像,因此粗略地弄清楚如何绘制常规的2D Sprite.我得到一个正方形来绘制和旋转但是一旦它变成纹理我必须搞砸了某个地方,因为我一直得到一个错误说DrawElements没有绑定任何数据,但如果我注释掉任何与纹理有关的代码它工作正常.

任何帮助将不胜感激.

这是我的Sprite类和Renderer类的代码:

public class Sprite
{
//Reference to Activity Context
private final Context mActivityContext;

//Added for Textures
private final FloatBuffer mCubeTextureCoordinates;
private int mTextureUniformHandle;
private int mTextureCoordinateHandle;
private final int mTextureCoordinateDataSize = 2;
private int mTextureDataHandle;

private final String vertexShaderCode =
//Test
"attribute vec2 a_TexCoordinate;" +
"varying vec2 v_TexCoordinate;" +
//End Test
"uniform mat4 uMVPMatrix;" +
"attribute vec4 vPosition;" +
"void main() {" +
"  gl_Position = vPosition * uMVPMatrix;" +
    //Test
    "v_TexCoordinate = …
Run Code Online (Sandbox Code Playgroud)

android 2d sprite android-emulator opengl-es-2.0

23
推荐指数
2
解决办法
3万
查看次数

使用AudioVideoCaptureDevice在Windows Phone 8中显示当前视频?

我已经设法为Windows Phone 8应用程序设置代码,该应用程序初始化并可以使用AudioVideoCaptureDevice开始/停止录制视频.(将其保存到IRandomAccessStream)

//Initialize Camera Recording
Windows.Foundation.Size resolution = new Windows.Foundation.Size(640, 480);
captureDevice = await AudioVideoCaptureDevice.OpenAsync(CameraSensorLocation.Back, resolution);
captureDevice.VideoEncodingFormat = CameraCaptureVideoFormat.H264;
captureDevice.AudioEncodingFormat = CameraCaptureAudioFormat.Aac;
captureDevice.RecordingFailed += captureDevice_RecordingFailed;
Run Code Online (Sandbox Code Playgroud)

但是,我无法弄清楚如何将此录制连接到VideoBrush以向用户显示录制内容.我希望用户能够看到他们正在录制的视频正在发生...

我知道有一个教程显示如何使用Windows Phone 7的旧API(CaptureSource,VideoDevice等)执行此操作,但我特别需要使用AudioVideoCaptureDevice进行记录.有谁知道如何在屏幕上显示这个视频?

c# video video-capture windows-runtime windows-phone-8

2
推荐指数
1
解决办法
1833
查看次数