cg基础】的更多相关文章

转自 麽洋TinyOcean:http://www.douban.com/people/Tinyocean/notes?start=50&type=note 因为看了陈惟十二讲视频没有课件,边看边敲笔记的话 就不能专心听了,所以就在网上找了找果然找到了"麽洋TinyOcean"笔记,感谢 麽洋TinyOcean. 本来想都放在一篇里的,没想到第一讲就99分钟……好多内容……还是一讲一篇吧~(后发现太多,整合一下) CG基础教程-陈惟老师十二讲笔记(上) 猛戳我,我是教程地址 第…
1. row-major or column-major 2.orthogonal matrices 3.why cameras always point along the world coordinate system negative z-axis......still dont know why 4 barycentric coordinates wiki P = aA + bB + cC [abc正比于PBC,PCA,PAB的面积] 5.三角形面积公式 1)海伦公式.abc为三边长,p…
在看Cg教程中,看到关键桢插值来表示一个动画的物体,例如一个动物拥有站着,奔跑,下跪等动画序列,美工将这些特定的姿态称为一个关键桢.为什么要用关键桢这种来表示了,这个比较容易理解,我们知道我们看的一些卡通动画,都不是每桢来画的,都是准备一些关键的过渡动画,然后,美工人员在根据每二幅之间来补充一些中间的动画,以增加精细的效果. MD2模型文件就是存储一些关键桢的动画模型,格式还是很简单的,对比OBJ模型来说,更容易读取,分为几个主要部分,一部分是头文件,里面对相应的数据描述在那,如多个面,多少桢,…
最近在学习一个网站补充一下cg基础.但是前几天网站突然访问不了了,同学推荐了waybackmachine这个网站,它定期的对网络上的页面进行缓存,但是好多图片刷不出来,很憋屈.于是网站恢复访问后决定把网页爬下来存成pdf. 两点收获: 1.下载网页时图片.css等文件也下载下来,并且修改html中的路径. 2. beautifulsoup.wkhtmltopdf很强大,用起来很舒心 前期准备工作: 0.安装python 1.安装pip 下载pip的安装包get-pip.py,下载地址:https…
Cg 支持7 种基本的数据类型:1. float,32 位浮点数据,一个符号位.浮点数据类型被所有的profile 支持(但是DirectX8 pixel profiles 在一些操作中降低了浮点数的精度和范围):2. half,16 为浮点数据:3. int,32 位整形数据,有些profile 会将int 类型作为float 类型使用:4. fixed,12 位定点数,被所有的fragment profiles 所支持:5. bool,布尔数据,通常用于if 和条件操作符(?:),布尔数据类…
0.前言 这篇文章写于去年的暑假.大二的假期时间多,小组便开发一个手机游戏的项目,开发过程中忙里偷闲地了解了Unity的shader编写,而CG又与shaderLab相似,所以又阅读了<CG教程>.<GPU 编程与CG 语言之阳春白雪下里巴人>学习图形学的基础.尝试编写unity shader时还恶补了些3D数学.这些忙里偷闲的日子,坏了空调的闷热的实验室,还真是有点怀念.当时写这些文章并不是想作为教程,只是自己的总结方便日后温习,所以文章内容都很基础. 2015/08/04 于工…
转载请声明转载地址:http://www.cnblogs.com/Rodolfo/,违者必究. 近期很多搞技术的朋友问我,如何步入VR的圈子?如何从零基础系统性的学习VR技术? 本人将于2017年1月1日开始,在<博客园>平台进行<VR零基础学习开发>系列文章连载,敬请关注. 在此呢,我写下此文,希望能够帮助那些有相同疑惑的朋友. VR到底是什么. VR是Virtual Reality的缩写,中文的意思就是虚拟现实. 虚拟现实(VR)是近几年来国内外科技界关注的一个热点,其发展也是…
java基础学习总结——基础语法1 一.标识符…
[.net 面向对象编程基础] (23)  结束语 这个系列的文章终于写完了,用了半个多月的时间,没有令我的粉丝们失望.我的感觉就是一个字累,两个字好累,三个字非常累.小伙伴们看我每篇博客的时间就知道了,有多少个凌晨2.3点才完成的.其实在日常工作中用起来虽然比较容易,但要是真正的写出来,又要写的让初学者能看明白,真不是一件轻松的事情,其中里面有好多示例都要考虑如何写才能通俗易懂. 写这个系列的文章,有很多也是参考了博客园和网上的文章,没有一一列举出原作者和URL,在此表示感谢和歉意.但是我可以…
转自http://www.itnose.net/detail/6117378.html 讨论完漫反射之后,接下来肯定就是镜面反射了 在开始镜面反射shader的coding之前,要扩充一下前面提到的知识,加深理解镜面反射与漫反射的区别. 引用一下一位前人博文中的一些基础概念,特别是关于冯氏反射模型的: 平行光(directional light) 一种是从特定方向射入并只会照亮面对入射方向的物体,我们称之为平行光(directional light). 环境光(ambient light) 另一…
转自http://www.itnose.net/detail/6096068.html 在上一个例子中,我们得到了由mesh组件传递的信息经过数学转换至合适的颜色区间以颜色的形式着色到物体上.这篇文章将要在此基础上研究片段的擦除(discarding fragments)和前面剪裁.后面剪裁(front face culling and back face culling)来达到透明效果. 当一个mesh组件的信息被传递后,我们可以通过代码决定哪些部分渲染(render)出来,而哪些部分不要,这…
Maya中mentalray灯光渲染终极训练视频教程 http://www.cgtsj.com/cg/f/vx3627/index.html Maya无人机建模制作训练视频教程第一季 http://www.cgtsj.com/cg/f/vx3626/index.html Maya动作捕捉关键帧技术视频教程 http://www.cgtsj.com/cg/f/vx3625/index.html Maya与PS材质绘制技巧视频教程 http://www.cgtsj.com/cg/f/vx3561/i…
Gesture Drawing with Alex Woo Gesture Drawing with Alex Woo and Louis Gonzales http://eisneim.com/?page_id=1271 ------------------------------Animation------------------------------Basics Animation 03 Drawing for Animation (基础动画03绘图动画电子书)http://www.9…
前一篇配置了MOGRE的运行环境,这里记录一些MOGRE基础知识,仅仅是最基础的一些东西.由于本人接触ogre的时间比较短,对于很多知识都是一知半解,所以理解起来不免会有一些错误,本人也希望自己在对ogre知识有了一个较深的认识后能重新温故这篇日记,更改自己的误解或者是对mogre进行补漏.废话不说了,进入正题. (1)在写ogre应用前,应该了解ogre的启动过程,有: 1 生成一个Root对象 2 定义资源: 3 设置RenderSystem 4 生成RenderWindow 5 初始化资源…
一.数组基本概念 数组是相同类型数据的有序集合. 数组描述的是相同类型的若干个数据,按照一定的先后次序排列组合而成.其中,每一个数据称作一个数组元素,每个数组元素可以通过一个下标来访问它们. 数组有三个特点: 1. 其长度是确定的.数组一旦被创建,它的大小就是不可以改变的.不可越界,如果越界,则报:ArrayIndexOutOfBoundsException 2. 其元素必须是相同类型,不允许出现混合类型. 3. 数组中的元素可以是任何数据类型,包括基本类型和引用类型. 数组不属于八种基本数据类…
[Unity Shaders]学习笔记——SurfaceShader(二)两个结构体和CG类型 转载请注明出处:http://www.cnblogs.com/-867259206/p/5596698.html 写作本系列文章时使用的是Unity5.3. 写代码之前: 当然啦,如果Unity都没安装的话肯定不会来学Unity Shaders吧? 阅读本系列文章之前你需要有一些编程的概念. 在VS里面,Unity Shaders是没有语法高亮显示和智能提示的,VS党可以参考一下这篇文章使代码高亮显示…
原地址:http://www.cnblogs.com/moonvan/archive/2011/10/13/2210498.html 一.Objective-C与C的渊源 Objective-C诞生于 20 世纪 80 年代,由Brad Cox 发明,意在将流行的.可移植的 C 语言与优雅的 Smalltalk 语言结合在一起.Objective-C 是 C 语言的一个扩展集,它以 C 语言为基础,在语言中添加了一些微妙但意义重大的特性. 苹果公司的iphone平台采用Objective-C做为…
1.苹果公司将Cocoa.Carbon.QuickTime和OpenGL等技术作为框架集:提供Cocoa组成部分有: (1)Foundation框架(有很多有用的,面向数据的低级类和数据结构): (2)Application Kit(也称AppKit)框架(包含了所有的用户接口对象和高级类,例如NS……), 还有一个支持框架的套件,包括Core Animation和Core Image. NS前缀在IOS开发中,经常会遇到NS开头的对象,这个要从乔帮主历史恩怨说起.当年Steve Jobs 和J…
概述 简单来讲,shader是为渲染管线中的特定处理截断提供算法的一段代码.Shader是伴随着可编程渲染管线出现的,开发者可使用Shader对渲染过程加以控制,拥有更大的创作控件,因此Shader的出现可以看作是实时渲染技术的一次革命. 在现代主流3D引擎中,Shader已经无处不在,例如镜头景深,动态模糊,卡通渲染,以及各种特殊材质效果和光照效果等等. Unity中所有的渲染都需要通过Shader来完成,开发者可以自己编写Shader,也可以使用Unity提供的内建Shader来完成各种画面…
一.Quartz 2D Quartz 2D是一个二维图形绘制引擎,支持iOS环境和Mac OS X环境. Quartz 2D以PDF的规范为基础的图形库,用来绘制二维文字和图形,允许相同的绘图指令在任何装置上,使用可以得到的最佳分辨率,产生相同的输出 Quartz 2D API可以实现许多功能,如基于路径的绘图.透明度.阴影.颜色管理.反锯齿.PDF文档生成和PDF元数据访问等 Quartz 2D API是Core Graphics框架的一部分,因此其中的很多数据类型和方法都是以CG开头的.会经…
一:运行源代码EnumTest.java,分析运行结果. 代码如下: public class EnumTest { public static void main(String[] args) { Size s=Size.SMALL; Size t=Size.LARGE; //s和t引用同一个对象? System.out.println(s==t); // //是原始数据类型吗? System.out.println(s.getClass().isPrimitive()); //从字符串中转换…
JavaWeb开发技术基础概念回顾篇 第一章 动态网页开发技术概述 1.JSP技术:JSP是Java Server Page的缩写,指的是基于Java服务器端动态网页. 2.JSP的运行原理:当用户第一次请求某个JSP文件时,容器首先检查JSP文件的语法是否正确,然后将JSP文件转换成Servlet原文件,并调用Java工具类将Servlet原文件编译成字节码文件.接下来,容器加载转换后的Servlet类,实例化一个该类的对象处理客户端的请求,请求处理完成后,容器将HTML格式的相应信息发送给客…
一.标识符 二.关键字 三.JAVA基础数据类型 3.1. java常量 3.2. java变量 从本质上来讲,变量其实是内存里面的一小块区域,一个程序在运行的时候,实际上这个程序是位于内存里面,然后才开始运行.一个.exe文件存放在硬盘上是无法运行的,在硬盘上看到的.exe文件无非就是一个文件而已,当我们双击这个.exe文件时,运行起来的时候实际上是整个.exe文件被放在了在内存里面,然后操作系统找到main方法,也就是程序的入口,然后就开始执行了.执行的过程之中,会不断地在内存里面分配一些区…
写在前面 写前面一篇的时候,发现还是不够基础.因此打算增加几篇基础篇,从点线面开始,希望可以更好理解. 其实用Pixel Shader的过程很像在纸上绘画的过程.屏幕上的每一个像素对应了纸上的一个方格,如果你愿意,你甚至可以一个个判断像素的位置,从而画出任何你想画的图像,也的确有爱好者这么做过.但往往,我们需要的是一个动态的效果,这个效果往往依赖于数学公式的约束.我们可以说是,用数学去绘画.我们用数学去约束,哪些点应该用什么颜色去绘制. 这篇,我们从基本的点和线开始,看一下如何在Pixel Sh…
-------小基原创,转载请给我一个面子 小基认为电子游戏与电影最重要的区别就是交互,如果电子游戏没有让你输入的交互功能的话,全程都"只可远观,而不可鼓捣"的话,你可能是在看视频,怕不是玩了假游戏.所以小基来讲讲如何输入并控制物体移动 首先双击unity 点击NEW,给你的工程(游戏)起个有意思的名字(突发发现小基随便起的这个Test1856有<教团1886>的既视感XD) 创建之后就是一个空场景,右上角的布局小基习惯用2by3这种风格,你可以自行选择. 点击create…
-------小基原创,转载请给我一个面子 现在移动游戏越来越火,大家都拿手机平板玩游戏,没有键盘和手柄输入,所以就不得不看看虚拟摇杆怎么搞?(小基对于没有实体反馈不是很喜欢呢) 首先要清楚,鼠标操作输入,应该在2d的UI平面上做一个虚拟摇杆,如下图 Hierarchy面板下点Create创建一个UI里面的Image 会自动创建一个Canvas(画布),UI方面的东西都在这里面显示 我们再创建一个专门处理UI的摄像机(这个主要处理鼠标点击时候,获取屏幕坐标,来处理移动逻辑,如果使用默认的Main…
摘要 由于机器人SLAM.自动导航.语音交互这一系列算法都在机器人操作系统ROS中有很好的支持,所以后续的章节中都会使用ROS来组织构建代码:而ROS又是安装在Linux发行版ubuntu系统之上的,先学一些Linux命令行相关的知识,对后续ROS教程的快速上手会大有帮助.由于后续ROS的开发都是在Linux发行版ubuntu系统上进行,所以本章节就以ubuntu系统为例,对Linux命令行相关的知识进行展开讲解,本章节主要内容: 1.Linux简介 2.安装Linux发行版ubuntu系统 3…
iOS学习——核心动画之Layer基础 1.CALayer是什么? CALayer我们又称它叫做层.在每个UIView内部都有一个layer这样一个属性,UIView之所以能够显示,就是因为它里面有这个layer才具有显示的功能.我们可以通过操作CALayer对象,可以很方便地调整UIView的一些外观属性,可以给UIView设置阴影,圆角,边框等等... 2.如何操作layer改变UIView外观? 2.1 设置阴影 //默认图层是有阴影的, 只不过,是透明的 _RedView.layer.s…
首先java这个了解下java的基础 首先java文件都是以.java结尾的  然后 他所有的内容都是有一个入口的就是放在了public static void main(String [] args){ 文件的内容}中 第一个java文件 public class one { //每一个文件必须要有一个公共类 这个类名必须和你的文件名一致 public static void main(String [] args) // java入口 { System.out.println("Hello…