资源简介
三角形用的是光滑着色,四边形用的是平面着色。三角形和四边形添加2种不同类型的着色方法。使用Flat coloring(单调着色)给四边形涂上固定的一种颜色。使用Smooth coloring(平滑着色)将三角形的三个顶点的不同颜色混合在一起,创建漂亮的色彩混合。
代码片段和文件信息
// OpenGL_Education.cpp : 定义应用程序的入口点。
//
#include “stdafx.h“
#include “OpenGL_Education.h“
#include
# include
#define MAX_LOADSTRING 100
// 全局变量:
HINSTANCE hInst; // 当前实例
WCHAR sztitle[MAX_LOADSTRING]; // 标题栏文本
WCHAR szWindowClass[MAX_LOADSTRING]; // 主窗口类名
// 此代码模块中包含的函数的前向声明:
ATOM MyRegisterClass(HINSTANCE hInstance);
BOOL InitInstance(HINSTANCE int);
LRESULT CALLBACK WndProc(HWND UINT WPARAM LPARAM);
INT_PTR CALLBACK About(HWND UINT WPARAM LPARAM);
int APIENTRY wWinMain(_In_ HINSTANCE hInstance
_In_opt_ HINSTANCE hPrevInstance
_In_ LPWSTR lpCmdLine
_In_ int nCmdShow)
{
UNREFERENCED_PARAMETER(hPrevInstance);
UNREFERENCED_PARAMETER(lpCmdLine);
// TODO: 在此放置代码。
// 初始化全局字符串
LoadStringW(hInstance IDS_APP_title sztitle MAX_LOADSTRING);
LoadStringW(hInstance IDC_OPENGL_EDUCATION szWindowClass MAX_LOADSTRING);
MyRegisterClass(hInstance);
// 执行应用程序初始化:
if (!InitInstance (hInstance nCmdShow))
{
return FALSE;
}
HACCEL hAccelTable = LoadAccelerators(hInstance MAKEINTRESOURCE(IDC_OPENGL_EDUCATION));
MSG msg;
// 主消息循环:
while (GetMessage(&msg nullptr 0 0))
{
if (!TranslateAccelerator(msg.hwnd hAccelTable &msg))
{
TranslateMessage(&msg);
DispatchMessage(&msg);
}
}
return (int) msg.wParam;
}
//
// 函数: MyRegisterClass()
//
// 目的: 注册窗口类。
//
ATOM MyRegisterClass(HINSTANCE hInstance)
{
WNDCLASSEXW wcex;
wcex.cbSize = sizeof(WNDCLASSEX);
wcex.style = CS_HREDRAW | CS_VREDRAW;
wcex.lpfnWndProc = WndProc;
wcex.cbClsExtra = 0;
wcex.cbWndExtra = 0;
wcex.hInstance = hInstance;
wcex.hIcon = LoadIcon(hInstance MAKEINTRESOURCE(IDI_OPENGL_EDUCATION));
wcex.hCursor = LoadCursor(nullptr IDC_ARROW);
wcex.hbrBackground = (HBRUSH)(COLOR_WINDOW+1);
wcex.lpszMenuName = MAKEINTRESOURCEW(IDC_OPENGL_EDUCATION);
wcex.lpszClassName = szWindowClass;
wcex.hIconSm = LoadIcon(wcex.hInstance MAKEINTRESOURCE(IDI_SMALL));
return RegisterClassExW(&wcex);
}
//
// 函数: InitInstance(HINSTANCE int)
//
// 目的: 保存实例句柄并创建主窗口
//
// 注释:
//
// 在此函数中,我们在全局变量中保存实例句柄并
// 创建和显示主程序窗口。
//
BOOL InitInstance(HINSTANCE hInstance int nCmdShow)
{
hInst = hInstance; // 将实例句柄存储在全局变量中
HWND hWnd = CreateWindowW(szWindowClass sztitle WS_OVERLAPPEDWINDOW
CW_USEDEFAULT 0 CW_USEDEFAULT 0 nullptr nullptr hInstance nullptr);
if (!hWnd)
{
return FALSE;
}
ShowWindow(hWnd nCmdShow);
UpdateWindow(hWnd);
return TRUE;
}
//
// 函数: WndProc(HWND UINT WPARAM LPARAM)
//
// 目的:
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2018-07-15 08:58 OpenGL_Education-03\
目录 0 2018-07-15 08:58 OpenGL_Education-03\.vs\
目录 0 2018-07-15 08:58 OpenGL_Education-03\.vs\OpenGL_Education\
目录 0 2018-07-15 08:58 OpenGL_Education-03\.vs\OpenGL_Education\v14\
文件 41472 2018-06-02 08:45 OpenGL_Education-03\.vs\OpenGL_Education\v14\.suo
目录 0 2018-07-15 08:58 OpenGL_Education-03\Debug\
文件 163840 2018-06-02 08:49 OpenGL_Education-03\Debug\OpenGL_Education.exe
文件 452472 2018-06-02 08:49 OpenGL_Education-03\Debug\OpenGL_Education.ilk
文件 1331200 2018-06-02 08:49 OpenGL_Education-03\Debug\OpenGL_Education.pdb
目录 0 2018-07-15 08:58 OpenGL_Education-03\OpenGL_Education\
目录 0 2018-07-15 08:58 OpenGL_Education-03\OpenGL_Education\Debug\
文件 375 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.log
文件 33911 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.obj
文件 8585216 2018-06-02 08:46 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.pch
文件 93736 2018-06-02 08:46 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.res
目录 0 2018-07-15 08:58 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\
文件 4754 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\CL.command.1.tlog
文件 17362 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\CL.read.1.tlog
文件 1258 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\CL.write.1.tlog
文件 203 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\OpenGL_Education.lastbuildstate
文件 4802 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\li
文件 3940 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\li
文件 814 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\li
文件 1304 2018-06-02 08:46 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\rc.command.1.tlog
文件 2778 2018-06-02 08:46 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\rc.read.1.tlog
文件 302 2018-06-02 08:46 OpenGL_Education-03\OpenGL_Education\Debug\OpenGL_Education.tlog\rc.write.1.tlog
文件 29837 2018-06-01 07:47 OpenGL_Education-03\OpenGL_Education\Debug\opengl_education.obj.enc
文件 142863 2018-06-02 08:46 OpenGL_Education-03\OpenGL_Education\Debug\stdafx.obj
文件 543744 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\vc140.idb
文件 520192 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\Debug\vc140.pdb
文件 17417 2018-06-02 08:49 OpenGL_Education-03\OpenGL_Education\OpenGL_Education.cpp
............此处省略37个文件信息
相关资源
- surface电脑win10系统修复工具
- 万能win10网卡驱动离线安装包 32/64位
- OpenGL三维图形系统开发与实用技术 基
- OpenGL鼠标交互3D模型
- 图形学的几道基础练习计算机图形学
- win10adb驱动
- VS2015_Qt5_Halcon混合编程代码和操作手册
- 交互式计算机:图形学基于OpenGL着色
- 基于opencv与opengl实现增强现实
- OpenGl三维镂垫绘制附使用说明
- 手势识别项目源码(vs2015)
- qt简单仿mstsc连接远程桌面源码使用
- OpenGL三维图形系统开发与实用技术基
- opengl导入FBX模型代码
- win32平台的opencv3.4.2
- OPENGL载入3DS
- opengl超级宝典第七版
- 高级着色语言GLSL渲染obj文件
- Tesseract4.0+VS2017+win10编译库文件
- Sound Blaster Connect的uwp版独立安装包
- QtitanRibbon4.12.0 支持vs2015
- MSP-FET430UIF win10 环境下驱动
- Visual Studio 搭建好的OpenGL环境GLFW3+GL
- OpenGL实现三维仿真系统
- 山东大学计算机图形学实验1
- 基于ORB算法的特征提取和匹配(VS20
- 基于SIFT算法的特征提取(VS2015+OpenC
- Win10 64位 RedisDesktopManager0.9.4安装包
- NTLite+企业版64位_1.5.0.5855
- 直线的四种裁剪算法
评论
共有 条评论