标签: directx

C#从wmv文件中获取帧

有没有人知道是否可以使用C#从位置X上的视频(.wmv)中获取帧/图像,而无需安装DirectX并在Windows 2008上工作(我希望尽可能少地安装网络服务器).

甚至使用directx的简单解决方案也可能很好.

亨克

c# directx wmv

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

在C#托管DirectX中制作自定义网格

我需要在运行时使用C#中的Managed DirectX 制作DirectX 3D网格.我无法找到有关如何执行此操作的任何信息.

  1. 不,我不能使用3D建模程序来制作我的对象.它们必须精确地确定尺寸和形状,并且在运行之前我没有任何尺寸或形状信息.
  2. 不,我无法从现有的DirectX网格功能构建模型.(一个简单的例子:DirectX的将让你轻松使用锥网和气缸网铅笔模型的过程中,你必须携带两个网格为你的铅笔,不只是一个,并正确定位和定向每个但你.甚至不能将铅笔的模型纵向分成两半,因为没有提供半圆柱或半锥形网格.)
  3. 在运行时,我已经计算了所有顶点并知道要连接哪些顶点以生成必要的三角形.
  4. 我需要的只是一种纯色.我不需要纹理贴图.

可以使用此DirectX调用获取球体
Mesh sphere = Mesh.Sphere(device, sphereRadius, sphereSlices, sphereStacks);
网格:此网格是在运行时构建的.

我需要知道的是如何制作类似的功能:
Mesh shape = MakeCustomMesh(device, vertexlist, trianglelist);
两个列表可以是任何合适的容器/格式.

如果有人能指出我管理的DirectX(C#)示例代码,即使它只是从3个硬编码三角形构建网格,这将是一个很大的好处.

c# directx runtime managed mesh

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

乘以逆矩阵?

如果我有一个矩阵,它是世界观投影的组合,我将它乘以投影的倒数,它会产生世界观矩阵或其他什么?如果没有,那么如何从世界视图投影矩阵中提取世界视图矩阵?

谢谢你的帮助 :)

math directx matrix inverse

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

差异SAFE_RELEASE(),SAFE_DELETE()

我是编程的新手.

我想知道发布和删除功能.

当我用new分配内存时,我应该用delete来终止它.

但是当我应该使用释放?

释放和删除有什么区别......?

c c++ directx

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

HLSL协调系统方向

这个问题可能看起来很简单,但我无法找到HLSL如何处理自己的坐标系.

我只想知道位于(0,0)的位置(左上角或左下角),因为我是这些着色器概念的初学者,我无法自己扣除它

谢谢你的帮助!

directx shader hlsl

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

尝试使用TriangleStrip Topologu创建三角形时的奇怪行为

我试图在输入汇编器设置为三角形条带的情况下创建这个2D三角形:

1.(0.0f, 0.0f, 0.5f)
2.(-0.5f, 0.0f, 0.5f)
3.(-0.5f, -0.5f, 0.5f)
Run Code Online (Sandbox Code Playgroud)

但是,没有绘制三角形,实际上渲染目标上没有绘制任何内容,甚至没有绘制单行.我搞砸周围,然后我换坐标23,和它的工作.正如我想要的那样绘制三角形.这种奇怪行为的原因是什么?

directx directx-11 directx-10

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

在一个场景中渲染多个对象DirectX C#

我对directX并不是很了解,但我会尽力解释.首先,我有多个模型对象(带顶点数据的自定义对象).目前,我的代码(见下文)可以使用该模型的vertexBuffer和indexBuffer在场景中渲染单个模型.我想做的是给出一系列模型.在一个场景中渲染它们.这是我目前的代码:

    private void Render()
    {
        device.Clear(ClearFlags.Target | ClearFlags.ZBuffer, Color.White, 1.0f, 0);
        device.BeginScene();

        float x = (float)Math.Cos(0);
        float z = (float)Math.Sin(0);
        device.Transform.Projection = Matrix.PerspectiveFovLH((float)Math.PI / 4, this.Width / this.Height, 1f, 50f);
        device.Transform.View = Matrix.LookAtLH(new Vector3(x, 6, z), new Vector3(0, 0, 0), new Vector3(0, 1, 0));
        device.RenderState.Lighting = true;
        device.Lights[0].Type = LightType.Directional;
        device.Lights[0].Diffuse = Color.White;
        device.Lights[0].Direction = new Vector3(-x, -6, -z);
        device.Lights[0].Position = new Vector3(x, 6, z);
        device.Lights[0].Enabled = true;

        device.Transform.World = model.transform;

        device.VertexFormat = CustomVertex.PositionNormalColored.Format;
        device.SetStreamSource(0, vertexBuffer, 0);
        device.Indices = indexBuffer; …
Run Code Online (Sandbox Code Playgroud)

c# directx direct3d

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

如何在版本之间进行迁移?

从directx 10到11有什么变化?我已经在directx 10中编写了一些代码,我想将其更改为directx 11.这仅仅是关于质量而我只能通过更改headrs和dll文件或函数以及编码方式来改变它吗?ING.

directx directx-11 directx-10

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

如何使用HLSL和DirectX 11进行激光效果?

我仍在使用我自己的自定义游戏引擎开发我的科幻视频游戏.现在,我想在我的游戏和引擎中实现战斗系统.虽然几乎所有东西都很清楚,但我想知道如何制作合适的激光束,如星球大战,星际迷航,巴比伦5等等.

我做了一些在线研究,但是我找不到合适的文章.我很确定我搜索了错误的关键字/标签.你能给我一些提示如何实现激光束等效果吗?我想,了解我在线研究所需的正确技术或术语就足够了......

directx hlsl directx-11

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

ID3D11DeviceContext :: Map慢性能

我正在使用桌面复制将屏幕内容复制到内存中的位图.我接收桌面纹理,然后创建一个分段纹理,用于CopyResource将桌面纹理复制到分段纹理,最后调用ID3D11DeviceContext::Map访问分段纹理位并复制它们.几乎与此处描述的方式相同:https://stackoverflow.com/a/27283837/825318

问题是Map呼叫需要花费大量时间 - 对于像4K这样的大显示分辨率,每次呼叫可能需要100毫秒,这是不可接受的高,因为我需要确保30 fps的速度.

有没有办法让纹理的内容更快?如果没有,有没有办法提供我自己的映射地址指针,以便系统复制纹理数据?谢谢

c++ windows directx desktop

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

标签 统计

directx ×10

c# ×3

directx-11 ×3

c++ ×2

directx-10 ×2

hlsl ×2

c ×1

desktop ×1

direct3d ×1

inverse ×1

managed ×1

math ×1

matrix ×1

mesh ×1

runtime ×1

shader ×1

windows ×1

wmv ×1