===========================================================

目录:

DirectX API 编程起步 #02 窗口的诞生

DirectX API 编程起步 #02 创建3D世界

=============================================================

这里记录了我从零开始学习使用 DirectX API 的过程。

参考教程:rastertek -> DirectX 11 Tutorials

准备工作

1)首先我们要有一套能写代码的软件,我使用的是微软自家的IDE:Visual Studio2015

VS2015社区版(免费) 下载地址

对于初学者来说,一套好的IDE确实能提升不少效率。不过用不用就看你个人喜好了。

2)为了能操控图形设备,我们还需要 DirectX SDK,也就是我们这次重点关注、学习的对象。

  下载地址

  下载后请安装在合适的地方,不必安装在系统盘。安装的地址太深入不方便日后的使用。

  安装完后,在 "安装目录(以后用 ”DirectXSDK“ 代替)\Samples\SampleBrowser" 文件夹下有一个 “SampleBrowser.exe",里面有不少自带的案例和教程,没事可以看看。

安装完成后准备工作基本上就完成了,可以熟悉一下VS的界面,调整一下设置使之更适合自己。

项目的创建

打开Visual Studio(以下简称VS),点击左上角的文件->新建->项目;

在弹出的窗口(如下图)中,先在左边的列表里进行如图的选择,然后在中间选择“Win32 项目”,最后在下方填好项目的名称、路径等

一切填好,单击确定之后,又会弹出一个窗口,点击下方的“下一步”,之后按下图进行设置,一定要把“空项目”选上,之后点击确定,一个空的Win 32项目便创建好了。

PS:Win32 是指Microsoft Windows操作系统的32位环境。虽然我们现今电脑大多数为64位,但这不影响我们编程。

项目的设置

由于我们需要使用 DIrectX 的 API,我们要先将他的路径包括进来,这样在编写的时候才能正常的调用他们。

新建好项目之后,打开 视图->其他窗口->属性管理器,或直接在右上角的搜索栏里搜“属性管理器”,如果你安装了英文版,请自行找到对应的英文。。。

在属性管理器里展开我们的项目设置(点最左边的三角),选择 Debug | Win32 (只要是 Debug 应该就行),双击 Microsoft.Cpp.Win32.user。如下图

在弹出的窗口中选择“VC++目录”,如下图


我们需要改动的是“包含目录”和“库目录”

先设置“包含目录”:

  1. 单击“包含目录“这一行,点最右边的倒三角,点<编辑...>。
  2. 如下图所示,点那个文件夹图标,新建一个路径,将路径设置为

    (你的DirectXSDK安装位置)\Include

 完成后点”确定“关闭。

再设置”库目录“,操作与上面的步骤1、2相似,但路径请设置为

(你的DirectXSDK安装位置)\Lib\x86

一路确定并保存项目,这样我们这个项目就可以正常的编译有关DirectX的代码了。

DirectX API 编程起步 #01 项目设置的更多相关文章

  1. DirectX API 编程起步 #02 窗口的诞生

    在这篇文章里我们先用 windows API 制作一个窗口出来,以后再用 DirectX API 渲染的东西就会显示在这里,控制台那黑白的画面肯定是没法用的. 每次的代码都会更新到Github 首先贴 ...

  2. C#编译器优化那点事 c# 如果一个对象的值为null,那么它调用扩展方法时为甚么不报错 webAPI 控制器(Controller)太多怎么办? .NET MVC项目设置包含Areas中的页面为默认启动页 (五)Net Core使用静态文件 学习ASP.NET Core Razor 编程系列八——并发处理

    C#编译器优化那点事   使用C#编写程序,给最终用户的程序,是需要使用release配置的,而release配置和debug配置,有一个关键区别,就是release的编译器优化默认是启用的.优化代码 ...

  3. ASP.NET Web API编程——路由

    路由过程大致分为三个阶段: 1)请求URI匹配已存在路由模板 2)选择控制器 3)选择操作 1匹配已存在的路由模板 路由模板 在WebApiConfig.Register方法中定义路由,例如模板默认生 ...

  4. 浅谈Windows API编程

    WinSDK是编程中的传统难点,个人写的WinAPI程序也不少了,其实之所以难就难在每个调用的API都包含着Windows这个操作系统的潜规则或者是windows内部的运行机制…… WinSDK是编程 ...

  5. Win32 API编程——前言

    一丶什么是Win32 API? 微软为了保护操作系统的安全性和稳定性,把系统分为内核层和用户层(内核层的代码只能在当CPU的特权级为R0状态下执行,用户层的代码在CPU特权级为R0和R3都能执行),w ...

  6. 第24 章 : Kubernetes API 编程利器:Operator 和 Operator Framework

    Kubernetes API 编程利器:Operator 和 Operator Framework 本节课程主要分享以下三方面的内容: operator 概述 operator framework 实 ...

  7. DirectX游戏编程入门

    刚开始学习D3D,安装完DirectX9后,在VS2008中新建Win32项目· ----------------------------------------------------------- ...

  8. Flink Program Guide (2) -- 综述 (DataStream API编程指导 -- For Java)

    v\:* {behavior:url(#default#VML);} o\:* {behavior:url(#default#VML);} w\:* {behavior:url(#default#VM ...

  9. Mysql C语言API编程入门讲解

    原文:Mysql C语言API编程入门讲解 软件开发中我们经常要访问数据库,存取数据,之前已经有网友提出让鸡啄米讲讲数据库编程的知识,本文就详细讲解如何使用Mysql的C语言API进行数据库编程.   ...

随机推荐

  1. Java继承和接口

    接口最关键的作用,也是使用接口最重要的一个原因:能上溯造型至多个基础类.使用接口的第二个原因与使用抽象基础类的原因是一样的:防止客户程序员制作这个类的一个对象,以及规定它仅仅是一个接口.这样便带来了一 ...

  2. 记一次CSR上线及总结

    终于到上线的时候了,可以好好休息了.放松了,但在没有经过用户确认之前,一切皆有可能发生...... 经历: 项目终于完成,上线文档已准备就绪,等待上线时刻. 在上线之前,忘记了解目前环境的部署架构,注 ...

  3. Stickup – 轻松实现元素固定效果的 jQuery 插件

    粘贴是一个简单的 jQuery 插件,在页面滚动的时候固定一个元素到浏览器窗口的顶部,让其总是保持在视图中可见.这个插件作用于多页的网站,但是对于单页的布局有额外的功能.借助 CSS,还可以实现当前视 ...

  4. React Native – 使用 JavaScript 开发原生应用

    前不久,Facebook 在F8开发者大会上正式开源了 React Native 项目.不过目前只有 iOS 版,Android 版还需要再等一段时间,这是最新的用 JavaScript 语言开发原生 ...

  5. 未找到与约束ContractName Microsoft.VisualStudio.Text.ITextDocumentFactoryService... 匹配的导出 VS2012报错

    刚安装完VS2012,打开VS2012新建项目,但是并没有像之前那样顺利的创建页面,而是弹出了一个错误窗口. 我的系统是win7旗舰版 64位 ,同时安装了VS2010和VS2012.然后我又试了一下 ...

  6. HtmlAgilityPack---Html解析框架

    如果你想从一段HTML中提取出指定的标记(如:获取所有的div.获取具有指定属性的元素)如果你想编辑一段HTML,修改里面的部分元素如果你想判断一段HTML中指定元素的关系(子节点.父节点.兄弟节点. ...

  7. linux下发布的执行文件崩溃的问题定位 心得一则

    C++ Release版本发布到客户处执行时,如果程序崩溃,有什么办法能够快速的确认程序的问题呢? 如果能gdb调试的话,比较简单了,可以使用gdb命令,类似如下: gdb ##set args ** ...

  8. iOS开发之JSON格式数据的生成与解析

    本文将从四个方面对IOS开发中JSON格式数据的生成与解析进行讲解: 一.JSON是什么? 二.我们为什么要用JSON格式的数据? 三.如何生成JSON格式的数据? 四.如何解析JSON格式的数据? ...

  9. Android对应用程序签名

    1.首先签名是个什么东西. 应用程序签名就是为你的程序打上一种标记,来作为你自己的标识. 2.为什么要进行数字签名 这是Android系统的要求,每一个应用程序必要要经过数字签名才可能安装到系统中,能 ...

  10. redis使用笔记

    mysql---select * from table where xx;insert into table(name1,name2..) values(value1,value2);delete f ...