介绍        Adaptive Scalable Texture Compression(ASTC)是一种世界领先的新型纹理压缩格式。这种压缩格式已经加入Khronos标准,并已在某些硬件平台中提供。本文介绍了它的工作原理、使用方法和如何最大程度地使用它。更深入的信息可以参考编码器提供的规范[Eva]。背景      &n
前言1.1 开篇代码错误检查和自动格式化对于我们来说都不陌生,它往往陪伴着我们的每一行代码输出、每一次保存提交,我们享受着自动格式化带来的便利,但偶尔也有些小问题影响体验。比如,面对同一个项目,各位项目协作者格式化方案却不一致,导致文件提交中频繁的出现代码格式的变动,微微到影响代码review;完成某条分支的代码merge,开开心心 commit,却被一堆 eslint error 阻止了脚步,确
我们知道游戏中对于3D物体表面细节的表现最重要的还是靠贴图来实现的,那么越是高分辨率越是真彩色的贴图自然表现力也是越强,但是同时带来的问题是所需占用的内存会成倍的上升,而节省内存这一点在目前的游戏中还是非常非常重要的。 所以各个平台上都在使用纹理压缩的技术,让纹理贴图在内存占用和显示效果能达到一个尽可能的平衡。在DirectX中,使用一种叫做DXT的纹理压缩技术,目前这种技术被大部分显卡所支持,通
2.4 压缩和混合纹理贴图纹理也可用于存储大量的数据,但不是一般意义上我们所知道的像素的颜色信息,而是存储在X和Y方向上以及RGBA通道上的多组像素信息。我们可以将多个图像打包存储在单一的RGBA纹理上,然后通过着色器代码提取这些元素,我们就可以使用每个图片的R、G、B和A通道的信息作为一个独立的纹理了。下图是将单个灰度图像压缩至一个独立的RGBA纹理的效果:这么做对我们有什么用处呢?首先,从你的
 纹理压缩技术已经广泛应用在各种3D游戏之中,它们包括:DXTC(Direct X Texture Compress,DirectX纹理压缩,以S3TC为基础)、S3TC(S3 Texture Compress,S3纹理压缩,仅支持S3显卡)、VTC(Volume Texture Compression,体积纹理压缩)、PTC(Palletized Texture Compression
一、ASTC纹理压缩格式介绍ASTC是在OpenGL ES3.0出现后在2012年中产生的一种业界领先的纹理压缩格式,它的压缩分块从4x4到12x12最终可以压缩到每个像素占用1bit以下,压缩比例有多种可选。ASTC格式支持RGBA,且适用于2的幂次方长宽等比尺寸和无尺寸要求的NPOT(非2的幂次方)纹理。以ASTC 4x4 block压缩格式为例,每个像素占用1字节,8bits。一张1024*
转载 2023-10-27 11:14:15
1306阅读
# iOS图片压缩ASTC简介及示例代码 ## 引言 随着移动设备的普及和应用需求的不断增加,图片在移动应用中扮演着重要的角色。然而,高分辨率的图片往往会占用较大的存储空间,导致应用安装包过大,加载速度慢等问题。因此,如何对图片进行高效的压缩成为了开发者们关注的焦点之一。在iOS开发中,ASTC(Adaptive Scalable Texture Compression)成为了一种常用的图片压缩
原创 2023-08-19 11:53:08
595阅读
 Unity 工具 之 (SharpZipLib) 实现带有中文文件Zip的压缩和解压(避免压缩中文内容乱码) 目录Unity 工具 之 (SharpZipLib) 实现带有中文文件Zip的压缩和解压(避免压缩中文内容乱码)一、简单介绍二、实现原理三、注意事项四、效果预览五、实现步骤六、关键代码 一、简单介绍Unity 工具类,自己整理的一些游戏开发可能用到的模块,单
转载 2024-03-23 11:56:42
222阅读
本文基于资料收集,概括了几种纹理压缩格式的基本思想,希望对于学习有所帮助。为什么我们需要纹理压缩格式?例如R5G6B5、A4R4G4B4、A1R5G5B5、R8G8B8或A8R8G8B8等未经压缩的图片格式,是能够被GPU直接读取的原生纹理格式。但在低端硬件设备或者说移动平台下,有两个问题需要解决。一个是内存,例如A8R8G8B8格式中一个像素占4字节,如果是512x512分辨率内存就占用512x
转载 2024-03-01 22:46:00
197阅读
正文:在进入游戏界面的时候我们可能会经常看到如下界面: 那么这意味着你可能要执行下面的操作那么在数据下载的时,对于Unity程序员要做的操作就是打包资源,在打包资源前需要对资源进行压缩,以减小包体大小。方便玩家下载较小的体积的资源包。首先需要一个插件SharpZipLib下载地址如下:http://icsharpcode.github.io/SharpZipLib/下载完成后编写对插件的
转载 2024-03-15 14:46:59
231阅读
一:前景如果一个游戏需要一次预加载多个Sound(比如说10个),传统的方案那就需要网络请求10次来加载这些资源.耗费在网络上的时间成本是很大的.那么方案来了:压缩Sound!我前段时间纠结于将Sounds压缩到Zip中,然后解压成一个一个的Sound来播放.But,随之而来的问题是,我没有找到方法或者是API能将Zip中的Sound资源还原成egret.Sound对象.其实我挺喜欢这种方案的,奈
原创 2018-12-05 17:45:49
800阅读
Egret使用-------------------------------------------------------1.添加模块后编译项目比如在egretProperties.json中添加res(资源加载)模块后需要编译引擎。但是我没在wing里找到编译引擎按钮,Win + R 输入cmd打开命令行,输入egret build -e进行编译。 2.egret最佳开发流程3.Eg
目录:一 创建第三方库二 TypeScript库三 JavaScript库四 第三方库制作在大型RPG中的实际应用 参考:第三方库的使用方法目标:本文目的是将现有游戏的框架制作成第三方库,减少编译时间。不想让别人看到源码,降低可读性。 一 创建第三方库在任意文件夹,我这里创建个test文件夹,shift+右键,打开命令行窗口,输入egret create_lib demo&nb
转载 2024-04-25 19:09:48
145阅读
egret 是啥egret 是一个用来帮你开发 H5 游戏的利器。也许你曾经用原生 js 写过一些小游戏,但是效率极低;也曾用 createjs 写过,但复杂起来也是力不从心,这时我们就需要学会用高级点的工具?(egret)。它的出现极大释放了你的双手,能帮助你更好更快的开发一款小游戏(谁用谁知道?)。这里就不与其他游戏引擎作比较了,这东西就好比 react 和 vue,选哪一个没关系,你能熟练使
深入懂得使用egret.WebSocket时间 2015-08-05 14:32:15                                          &nbs
转载 精选 2015-10-31 15:55:51
2888阅读
  kGL_KHR_texture_compression_astc_ldr kWEBGL_compressed_texture_astc_ldr   KHR_texture_compression_astc_ldr KHR_texture_compression_astc_hdr 浮点精度 OES_texture_compression_astc adreno扩展支持 unity有包这个扩展 m
转载 2019-09-02 17:55:00
147阅读
2评论
现在我们使用egret来起步开发一个名叫《成语大挑战》的小游戏,关于egret的开发环境就不在这里啰嗦了,直接去官方下载安装就可,egret是我见过开发环境部署最简单的解决方案,这个系列教程中,使用egret的Wing和ResDepot,只需要安装这两个就行,首先打开EgretWing,选择创建项目,输入你想要的项目名称,项目类型为“Egret EUI项目”,然后下一步:由于游戏设计的是竖屏,而
瘦身目的开发过程中,随着功能不断的迭代,包体积也会逐渐变大,如果此时将包投入市场,将会引来客户的投诉和抱怨。体积大一方面是浪费用户数据流量,另一方面是增加了安装的等待时间,用户可能因为嫌弃安装包太大扬长而去,对企业利润有着直接的冲击,所以应用瘦身环节尤为重要。下面以企业项目做实例分享一下瘦身经验。基本思路其实很简单,主要分两大步骤:了解安装包的组成部分,对安装包的资源目录瘦身1.安装包的组成部分在
上一章介绍了上拉加载下拉刷新的功能 这章谈谈搜索和本地缓存。主要功能有,点击搜索显示搜索输入框同时显示搜索历史记录,点击右侧搜索按钮搜索数据同时保存到搜索历史记录中,清除历史记录等功能。第一步,做一个搜索的输入框,可以利用weui-wxss框架中searchbar。没有weui-wxss 可以在 https://github.com/weui/weui-wxss 找到
1、概述        Moving Picture Experts Group Audio Layer III(MPEG-1 Audio Layer 3,动态图像专家压缩标准音频层面3),经常称为MP3,是当今较流行的一种数字音频编码和有损压缩格式,它设计用来大幅度地降低音频数据量,而对于大多数用户的听觉感受来说,重放的音质与最初的不压缩音频相比没有明显的
转载 2024-04-19 17:42:38
68阅读
  • 1
  • 2
  • 3
  • 4
  • 5