RenderScipt学习总结

上传人:M****1 文档编号:512641021 上传时间:2023-01-11 格式:DOC 页数:12 大小:115.50KB
返回 下载 相关 举报
RenderScipt学习总结_第1页
第1页 / 共12页
RenderScipt学习总结_第2页
第2页 / 共12页
RenderScipt学习总结_第3页
第3页 / 共12页
RenderScipt学习总结_第4页
第4页 / 共12页
RenderScipt学习总结_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《RenderScipt学习总结》由会员分享,可在线阅读,更多相关《RenderScipt学习总结(12页珍藏版)》请在金锄头文库上搜索。

1、RenderScipt 学习总结Renderscript(渲染脚本)是Google全新加入的一个标志性功能,是一个新的 API, 旨在带来更高的性能的下级 API 给开发者,它带有高性能的 3D 渲染和计算操作,这可以很大程度的提高他们的应用程序的性能Renderscript 已经被使用到了一些东西中,比如 Honeycomb 的动态壁纸中以及复杂的 YouTube 和 Book 应用中,这个内建的 Renderscript 是非常出色的,就像 Google 说的“接近极端”,它将提高你的设备上执行本地代码的性能。从目前的情况来看这是非常不错的,与现存的 NDK 不同,最终产品将可以跨平台工作

2、。(以上介绍均来自网上)更多介绍请google。光栅化:确定最佳接近图形的像素集合,并用指定属性写像素的过程!也称为扫描转化。 OpenGL红宝书上解释为:把物体的数学描述以及与物体相关的颜色信息转换为屏幕上的像素,这个过程称为光栅化。/解释什么是Allocation ,Type ,Element ,Android自2.1以后增加了Renderscript以加强图像和3D方面的处理能力和速度。RenderScript简单的讲,可以概括为:什么是RenderScript提供了一套API,封装了着色器语言的使用和配置分为Java,JNI,Native三层Engineopengl操作(设置,创建实际

3、处理器程序并连接)在线程中循环执行main函数Invoke 的使用 Android RenderScript 的使用基础篇2012-03-02 09:55:14 我来说两句 收藏 我要投稿 字体:小 大 准备上4.0项目,最近接触API 的时候看到了RenderScript 。通过运行google 那几个项目发现这个真是一个非常不错的API,但是google 所提供的文档非常少,有助于了解计算机图形计算,虽然我们做应用编程的不一定要涉及这块,但涉猎一下总是不错的。RenderScript 是Android 平台上的一种类C脚本语言。要在我们程序上实现RenderScript 渲染功能,最少需要

4、实现的几个功能如下,以一个Hello Wold 为例:1.helloworld.rs 实现RenderScript 的代码2.RenderScriptRS.java 一个辅助类,简化操作RenderScript (非必要)3.RenderScriptView.java 一个继承于RSSurfaceView的类,用于显示RenderScript 的渲染或者用来处理用户的触摸等视图4.RenderScriptHelloWorldActivity.java 这个不用多说,Android 应用程序的界面类当创建一个RenderScript 的项目的时候,必须在包名下创建一个以rs为后缀的文件(位于我们

5、Activity 同包名下),如本篇文章使用的helloworld.rs文件.#pragma version(1)#pragma rs java_package_name(com.xuzhi.rs.helloworld)#include rs_graphics.rshint gTouchX;int gTouchY;void init() gTouchX=50.0f; gTouchY=50.0f;/application mainint root(void) rsgClearColor(0.0f,1.0f,0.0f,0.0f);/颜色更改为no red,full green,no blue,no

6、 opacity ,的RGBA值 rsgFontColor(1.0f,0.0f,1.0f,1.0f);/设置字体颜色 rsgDrawText(my first renderscript application,gTouchX,gTouchY);/根据应用传上来的x,y 将字画在屏幕对应的坐标上 rsDebug(=my renderscript debug=,rsUptimeMillis();/打印日志 return 20;注解:#pragma:简单的可以理解告诉或者通知编译器编译这个文件时需要的参数或者指定编译的版本等,跟编译器有关。void init():这个函数作一些初始化动作int ro

7、ot(viod):程序入口,根据返回值(ms)作刷新。比如上面写的20相当于每20毫秒刷新一次。 root 函数下rsgClearColor,rsgFontColor,rsgDrawText都位于rs_graphics.rsh头文件下。 rsDebug是打印日志函数,位于rs_core.rsh头文件。 在上面的代码中,日志将己每20毫秒打印一次这样的日志:03-01 11:09:18.289: D/RenderScript(1838): =my renderscript debug= 600462 0x9298e rsUptimeMillis则定义在rs_time.rsh头文件中。目前有关于R

8、enderScript调用的函数位于我们SDK目录下(platforms/android-*目前11-15/renderscript/include)目录里面的头文件中。好了,rs文件己经编写完成,接着往下走。下一步,为了方便调用RenderScript 这里创建了一个辅助类,RenderScriptRS.java。/* Render Script help* author terry*/public class RenderScriptRS private RenderScriptGL mRS; private ScriptC_hellowold mScript; public RenderScriptRS(RenderScriptGL rs,Resources resource) / TODO Auto-generated constructor stub mRS=rs; mScript=new ScriptC_helloworld(mRS, resource, R.raw.hellowold);

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号