Premultiplied Alpha 这个概念做游戏开发的人都不会不知道.Xcode 的工程选项里有一项 Compress PNG Files,会对 PNG 进行 Premultiplied Alpha,Texture Packer 中也有Premultiplied Alpha 的选项.那么问题来了,Premultiplied Alpha 是什么呢?我被这个问题困惑了很久,之前搜到过 Nvidia的这篇文章,其实说的很清楚,只是当时有很多相关概念没搞清楚,所以没看懂.直到前几天读<Real T…
Xcode 的工程选项里有一项 Compress PNG Files,会对 PNG 进行 Premultiplied Alpha.游戏开发中会更加关注这个格式,省一些运行时计算. Premultiplied Alpha 是什么呢? Alpha Blending: To Pre or Not To Pre 这篇文章其实说的很清楚.还有<Real Time Rendering> 一.Alpha Blending 要搞清楚这个问题,先得理解 Alpha 通道的工作原理. 最常见的像素表示格式是 RG…
☞ ░ 前往老猿Python博文目录 ░ Alpha预乘(Premultiplied Alpha)和PRGBA 一般来说四通道图像数据保存的都是ARGB或RGBA,其R.G.B值还没有进行任何透明化处理,但这种格式在图像合成时会存在两个问题: 由于对有Alpha通道的图片进行合成处理时,先要获取原始图像RGB的值,这个原始图像真正的RGB值必须考虑Alpha通道,因此会进行一次计算:源图像像素颜色 X alpha.如果这种计算都在合成时进行处理,性能处理压力就会集中在合成阶段: 在图像合成时,有…
☞ ░ 前往老猿Python博文目录 ░ 一.引言 由于老猿以前没接触过图像处理,在阅读moviepy代码时,对类的有些处理方法代码看不懂是什么含义,为此花了4天时间查阅了大量资料,并加以自己的理解和消化,终于明白了相关处理概念,整理成文供大家参考. 二.RGB 在图像处理过程中,图像的合成操作是使用频率最高的,如图像显示.图像拷贝.图像拼接以及的图层拼合叠加等. 图像合成,其实也就是图像像素颜色的混合. 大多数电脑处理图像都是使用 RGB来表示像素,RGB代表红.绿.蓝三个通道的颜色混合,电脑…
loadView在App启动时到底都干了些什么? 查阅苹果官方文档如下: 1. 当你访问一个ViewController的view属性时,如果此时view的值是nil,那么,ViewController就会自动调用loadView这个方法.这个方法就会加载nib文件或者创建一个空的view对象(self.view = nil). 2.使用nib文件创建view时,没必要重载loadView方法,因为loadView的作用就是加载nib.如果你非要重载,那么必须调用[super loadView]…
Python类中的self到底是干啥的 Python编写类的时候,每个函数参数第一个参数都是self,一开始我不管它到底是干嘛的,只知道必须要写上.后来对Python渐渐熟悉了一点,再回头看self的概念,似乎有点弄明白了. 首先明确的是self只有在类的方法中才会有,独立的函数或方法是不必带有self的.self在定义类的方法时是必须有的,虽然在调用时不必传入相应的参数. self名称不是必须的,在python中self不是关键词,你可以定义成a或b或其它名字都可以,但是约定成俗(为了和其他编…
package-lock.json到底是干嘛的? https://mp.weixin.qq.com/s/NaVVljKrQAFmHMdbkaYmPg## nvm-windows https://github.com/coreybutler/nvm-windows…
到底想干啥?" title="途牛与十八好汉撕X又言和 到底想干啥?"> 天下大势,合久必分,分久必合.很多看起来热闹哄哄的"劳燕分飞"事件,最后其实都只是一场闹剧而已.在博得足够眼球关注或者达到目的后,又开始甜甜蜜蜜地在一起,几乎成为各类撕X事件的惯用套路.如今,途牛和十八家旅游企业撕X又言和的事儿,也证明了双方利益至上的合作关系. 从表面看,这只不过是在线旅游市场供应商和分销商的对决,但实际上却凸显出在线旅游市场目前的乱象以及未来的发展方向.就当…
现在OS X中自带的[预览]功能十分强大,我们甚至可以通过预览来直接制作一些透明效果的PNG图片,当做图片素材(例如图标)使用.这里要用到的是[预览]中的“即时Alpha”工具. -首先我们要使用预览打开你希望制作成为透明背景效果的图片 <ignore_js_op> -点击预览上方工具栏的笔状编辑工具,显示编辑工具栏 <ignore_js_op> -在出现的编辑工具栏中,找到 "即时Alpha" 这个功能,像一个魔术笔一样的按钮,点一下准备开始编辑(如果没出现在…
在Zookeeper的官网上有这么一句话:ZooKeeper is a centralized service for maintaining configuration information, naming, providing distributed synchronization, and providing group services. 这大概描述了Zookeeper主要可以干哪些事情:配置管理,名字服务,提供分布式同步以及集群管理.那这些服务又到底是什么呢?我们为什么需要这样的服务…
在 SQL Server 创建或修改「存储过程(stored procedure)」时,可加上 WITH RECOMPILE 选项,但多数文档或书籍都写得语焉不详,或只解释为「每次执行此存储过程时,都要重新编译」.事实上,是指执行此一存储过程时,要强制重新产生「执行计划(execution plan)」,而不要从「缓存(cache)」去取得旧的「执行计划」. SQL Server 在评估与产生「执行计划」时,非常耗 CPU 资源,因此,如何让其正确地从 cache 中,重复使用旧的「执行计划」就…
好好好 乖  本宝宝来告诉你  你来是干嘛的啊~ 话不多说 直接上码 当然如下代码是在jquery环境下运行的 HTML JS 完事~~~ 当你点击div元素的时候  你会发现弹出来“我被单击了”这句话 惊不惊喜 意不意外~~ 当然这是最简单的栗子! 用最简单的栗子让大家伙都明白怎么用 吼吼!!…
https://www.golangtc.com/t/5ad833404ce40d2654053485 小生初学Go,有一点不懂,今天为了知道空结构体到底占多大的空间的时候,去百度说用unsafe.sizeof,但是对于unsafe.sizeof好像和其它语言的sizeof有些不一样? 比如: var str string = "hello" var str2 string fmt.Println(unsafe.SizeOf(str), unsafe.SizeOf(str2)) 结构两…
效果图: 核心代码: /// <summary> /// 方法一 设置图像透明度 /// </summary> /// <param name="srcImage"></param> /// <param name="opacity"></param> /// <returns></returns> public static Image TransparentImage…
<?xml version="1.0" encoding="utf-8"?>  <bitmap xmlns:android="http://schemas.android.com/apk/res/android"    android:src="@drawable/bg_header"      android:tileMode="repeat" >  </bitmap>…
./arch/x86/events/intel/core.c:2161:            data.br_stack = &cpuc->lbr_stack;./arch/x86/events/intel/ds.c:1181:        data->br_stack = &cpuc->lbr_stack; LBR  last branch record特性…
这个事情分两方面来说:首先是路由器这部分.路由器开启SNMP功能之后,它能够对自己的每个接口上的流量有一个统计,当然统计的不单单只有流量.然后路由器把统计到的内容按一定的格式保存起来.这个格式是大家都商量好的.比如上学的时候出分数.大家约定,第一个成绩是数学.第二个是语文.第三个是英语.老师录入成绩就按照这个约定来. 另外一方面就是刚才你说到的电脑上的软件.这个软件干什么用的呢? 用来向路由器发送一个请求,获取数据的.首先你得让路由器知道你想要什么数据吧? 这个就用到了前面说的那个规则,约定.接…
纹理混合遇到的问题 pre-multiplying OpenGL Android iOS Alpha-blending pre-multiplying of texture OpenGL Android iOS 问题 在进行 OpenGL 纹理混合的过程中,遇到樂一个诡异的现象,两个纹理混合的效果出人所料: 将一个白色渐变的 logo 加在另一张图片上,这个 logo 是由外向里逐渐增加透明度的,也就是最外围的透明度为0,而中心的透明度接近 1,也就是完全不透明,实心.那么预期的效果希望是在底图…
目录 上一篇博文 运行测试截图 需求分析 目标 特性 头脑风暴 确定需求 总体设计 具体实现 新建Engine3D项目 实现上下文 实现_init 实现"获得WebGL上下文" 实现"初始化所有Shader" 实现"初始化场景" 实现"设置清空颜色缓冲时的颜色值" 返回用于主循环的数据 实现_loop 实现"主循环" 实现"clearCanvas" 实现"_render&quo…
Premultiplied Alpha 这个概念做游戏开发的人都不会不知道.Xcode 的工程选项里有一项 Compress PNG Files,会对 PNG 进行 Premultiplied Alpha,Texture Packer 中也有Premultiplied Alpha 的选项.那么问题来了,Premultiplied Alpha 是什么呢?我被这个问题困惑了很久,之前搜到过 Nvidia的这篇文章,其实说的很清楚,只是当时有很多相关概念没搞清楚,所以没看懂.直到前几天读<Real T…
图像处理(Alpha通道,RGB,...)祁连山(Adobe 系列教程)****的UI课程 一个也许很傻的问题,在图像处理中alpha到底是什么?  Alpha通道是计算机图形学中的术语,指的是特别的通道,意思是“非彩色”通道,主要是用来保存选区和编辑选区. 为什么用‘Alpha’代表透明度? l  Alpha 没有透明度的意思,不代表透明度.opacity 和 transparency 才和透明度有关,前者是不透明度,后者是透明度.比如 css 中的「opacity: 0.5」就是设定元素有…
近期開始用cocos2dx 3.0做东西,略有心(cao)得(dian),略微作下记录吧. v3.0相对v2.2来说,最引人注意的,应该是对触摸层级的优化.和lambda回调函数的引入(嗯嗯.不枉我改了那么多类名. 话说,每次cocos2dx大更新.总要改掉一堆类名函数名). 这些特性应该有不少人研究了,所以今天说点跟图片有关的东西. v3.0在载入图片方面也有了非常大改变,仅仅只是是藏在水下的,不到出问题的时候就不easy发觉. 简单来说,v2.2和之前的版本号,在iOS上,cocos2dx是…
呃呃呃……需求的来源又是同学,对!又是! 废话不哆嗦,怎么把一张图在iOS上转一个Base64String出来,稍微了解的,或者随便搜一下,都能搞定一大堆,但是!!!! 自己(iOS)转自己用,完全没问题,但是当你需要和安卓.web端一起用的时候,事情就爆炸了,你可能会发现自己转出的Base64String和别人的不一样,你以为人家错了,可是人家转出来的都一样!!!!! 事情完全不怪你,主要是因为UIImage类,这个类会悄悄地对你读进来的图片进行加工,具体干了啥,我也不知道,但是我知道这步加工…
http://blog.csdn.net/yanzi1225627/article/details/22439119 众所周知,想要让ImageView旋转的话,可以用setRotation()让其围绕中心点旋转,但这个旋转是不带动画的,也就是旋转屏幕时图片噌的一下就转过去了,看不到旋转的过程,此UI体验不大好,为此需要自定义带旋转动画的ImageView.虽然Google SDK里基本控件里没有,但在Camera的原生APP代码里却给出了带旋转动画的ImageView,即今天的主角:Rotat…
这篇文章被拖延得这么久是因为我没有找到合适的引言 -- XXX 这一篇接着讲Gamma.近几年基于物理的渲染(Physically Based Shading, 后文简称PBS)开始在游戏业界受到关注并迅速流行.10年.12年以及今年的siggraph都专门开了一个course来介绍基于物理的渲染的基本理论和工程实践,这在很大程度上推动了PBS的普及.如果你对PBS还不太了解的话,不妨先看一看龚大写的系列文章.在从传统渲染管线切换到PBS管线的过程中,一个非常基础而又重要的概念叫做伽马正确(Ga…
What we think of as conventional alpha-blending is basically wrong. --Tom Forsyth 前段时间在Amazon上淘的三本二手书——一本Jim Blinn's Corner系列的Dirty Pixels, 另二本是Andrew Glassner's Notebook——几经周折终于是送到了,当然立刻马上是迫不及待地大致翻了一遍.相比于Andrew Glassner的天马行空笔下千秋(从几何讲到折纸和形状合成,从对称讲到织纹…
大家好,又到了学习Glide的时间了.前段时间由于项目开发紧张,再加上后来又生病了,所以停更了一个月,不过现在终于又可以恢复正常更新了.今天是这个系列的第五篇文章,在前面四篇文章的当中,我们已经学习了Glide的基本用法.Glide的工作原理和执行流程.Glide的缓存机制.以及Glide的回调机制等内容.如果你能将前面的四篇文章都掌握好了,那么恭喜你,现在你已经是一名Glide好手了. 如果你还没有阅读过前面四篇文章的话,那么可以点击后面的链接,依次向前阅读 Android图片加载框架最全解析…
#include<stdarg.h> #include<png.h> #include<glut.h> #include<math.h> #include<iostream> #pragma comment(lib,"libpng16.lib")//读取png图片 GLuint CreateTextureFromPng(const char* filename) { unsigned char header[8]; //8 i…
觉得自己越来越无耻了呢?原文:http://laoyin.blog.51cto.com/4885213/895554 我复制到windows下也可以正常跑出来. #include<stdarg.h> #include<png.h> #include<glut.h> #include<math.h> #include<iostream> #pragma comment(lib,"libpng16.lib")//读取png图片 G…