首页
Python
Java
IOS
Andorid
NodeJS
JavaScript
HTML5
【
PhiloGL学习(6)——深情奉献:快乐的一家
】的更多相关文章
PhiloGL学习(6)——深情奉献:快乐的一家
前言 话说上一篇文章结尾讲到这一篇要做一个地球自转以及月球公转的三维动画,提笔,不对,是提键盘开始写的时候脑海中突然出现了几年前春晚风靡的那首歌:蒙古族小丫头唱的快乐的一家.闲言莫提,进入正题. 一. 原理分析 场景涉及两个对象,一个是地球.一个是月球,当然这基本是废话,不过还可以再添加一个对象,月球的公转轨迹.地球和月球都可以用一个球来模拟(Sphere),稍微困难的是公转轨迹,公转轨迹是一个圆,PhiloGL貌似没有直接提供圆的封装,但是有画线段的API,细细想来,什么是圆?祖冲之早就告…
PhiloGL学习(2)——骚年,让我们荡起双桨
前言 上一篇文章中简单介绍了PhiloGL框架如何上手.GLSL语言以及简单的绘制一个方块(见PhiloGL学习(1)--场景创建及二维方块加载).本文很简单,我们一起来让这个方块动起来. 一. 原理分析 以上一篇文章为基础,其中的html部分不需要修改,js部分仅做简单修改.本文主要操作的是camera. 想让一个物体动起来与现实情况一致,要么是调整自身姿态要么是调整自身位置.调整姿态是为旋转,调整位置是为移动,在PhiloGL中即为调整对象的position或者rotation.当然还有…
PhiloGL学习(1)——场景创建及方块欲露还羞出水面
前言 上一篇文章中介绍了我认识PhiloGL框架的机缘以及初步的探讨(见JS前端三维地球渲染--中国各城市航空路线展示),在此文中仅仅对此框架进行了简单介绍并初步介绍了一些该框架的知识.首先三维这个东西本身涉及的技术和知识点就非常多,我也基本属于初次接触:其次学习也需要过程,需要一点点积累,不积跬步无以至千里. 这几天天天加班,但是也利用空闲时间学习了些此框架的基础知识,本文为大家介绍如何创建一个简单的二维场景. 一. HTML部分 PhiloGL采用canvas来加载三维模型,所以只有在支持H…
PhiloGL学习(4)——三维对象、加载皮肤
前言 上一篇文章中介绍了如何响应鼠标和键盘事件,本文介绍如何加载三维对象并实现给三维对象添加一个漂亮的皮肤. 一. 原理分析 我对三维的理解为:所谓三维对象无非是多个二维对象拼接到一起,贴图就更简单了,就是将一张图片贴到对象上.so easy,那么我们就一步步来实现吧. 二. 创建立方体 2.1 立方体对象 这几天干个事,老是说数据立方体数据立方体,还是没有弄太懂什么是数据立方体,但是我完全可以弄个立方体啊.根据上面的分析知道三维与二维没有本质的区别,所以创建立方体同样是new一个Model对象…
PhiloGL学习(5)——神说要有光,便有了光
前言 上一篇文章中介绍了如何创建三维对象及加载皮肤,本文为大家介绍如何为场景添加光源. 一. 原理分析 光在任何地方都是非常重要的,无论在哪里都说是要发光发热,光和热也是分不开的.光线分为点光源和线光源,所谓点光源和线光源也是个相对的概念,站在地球上我们可以认为太阳光是线光源,其实从更大的尺度来看太阳光也是个点光源,只是我们站在地球上来看光线基本上是平行的了,所以可以认为是线光源.所有问题,站在不同的角度来看就会发生变化. 光线还有另外几个概念,环境光(ambient light).漫反射光(d…
PhiloGL学习(3)——程序员的法宝—键盘、鼠标
前言 上一篇文章中介绍了如何让对象动起来,本文介绍如何让场景响应我们的鼠标和键盘以控制场景的缩放及对象的转动和移动等. 一. 原理分析 有了上一篇文章的基础,我们已经知道了如何让场景和对象动起来.本文我们通过键盘和鼠标来控制对象的动作,这就有点Game的意思了.对程序员来说,这其实是个很easy的事情,无非就是响应各种事件.下面就让我们来看一下PhiloGL如何完成此响应. 二. 事件响应 在PhiloGL类中添加events模块,用于监听各种事件.总体如下: PhiloGL('test1',…
学习.NET是因为热爱 or 兴趣 or 挣钱?
看到最近园子里掀起了“.NET快不行了”.“.NET工资太低了”.“转行做XX”等一系列之风,不由得想说点什么,我只是基于自己的观点,你认同或者不认同,我就是这样认为,无所谓对与错,写文章就是为了交流思想. 犹记得第一次参加面试时,一位53岁的微软老程序员问我:”你热爱编程吗?请以‘热爱编程’为题谈一下你的感受或者看法”.我当时傻乎乎的,套用我写情书的话侃侃而谈:“自从96年第一次见到电脑,我就被它深深的吸引住了,当初的ucDos,WPS,至今都印象深刻,尤其是求伯君闭门三个月开发的WPS更是让…
opengl入门学习
OpenGL入门学习 说起编程作图,大概还有很多人想起TC的#include <graphics.h>吧? 但是各位是否想过,那些画面绚丽的PC游戏是如何编写出来的?就靠TC那可怜的640*480分辨率.16色来做吗?显然是不行的. 本帖的目的是让大家放弃TC的老旧图形接口,让大家接触一些新事物. OpenGL作为当前主流的图形API之一,它在一些场合具有比DirectX更优越的特性. 1.与C语言紧密结合. OpenGL命令最初就是用C语言函数来进行描述的,对于学习过C语言的人来讲,Open…
20145213《Java程序设计》第七周学习总结
20145213<Java程序设计>第七周学习总结 教材学习内容总结 周末快乐的时间总是短暂的,还没好好感受就到了要写博客的周日.有人喟叹时间都去哪儿了,那本周我们就来认识一下Java里的时间吧!(硬性植入) 首先来认识一下一些重要的时间基准吧! 格林威治标准时间(GMT),关键词--观察太阳.不准. 世界时(UT),关键词--观测远方星体.比楼上准一点. 国际原子时(TAL),关键词--铯原子辐射振动.过分准. 世界协调时间(UTC),关键词--协调UT与TAL时间差距不要太大 Unix与e…
雅思创始人Keith Taylor谈英语学习
雅思创始人Keith Taylor谈英语学习 “要学的是信息,而不是语言” 我们要学习一个国家的语言就得知道这个国家的方方面面.要学习英语就得了解英美国家的社会.经济.人文.历史等各方面的信息. 大家请看这个公式:“E≠C; C≠E”, 翻译成中文就是:英语不等于汉语的翻译:汉语也不等于英语的翻译.学习英语,我们要学习的是英语国家的文化. 请问大家,你们能列举出中国的主要港口吗?这个问题应该很简单.但是,请问各位,你们能列出英国的五个主要港口吗?你们知道苏格兰的首府吗?回答这两个问题也许就不是那…