遊戲/程序/更新/二次開發/小作品相關發佈
Feb 26
背景

参考mPaaS等比较理想化的客户端native组件解藕落地方案,我们已经把各个基础SDK解耦了,非常理想的情况下我们可以在podfile里指啥引啥,不依赖别的任何东西了。但是这样做会有一个副作用。比如我有一个定位sdk,原本初始化的方式是:
- (BOOL)initLocationServiceWithUUID:(NSString *)uuid
                           clientID:(NSString *)cilentID
                            authKey:(NSString *)authKey;

看起来很自然。但是由于定位下游会进行网络请求,因此在定位sdk的解耦过程中,为了把网络请求解开,初始化过程变为了:
Feb 20
之前UC提出了一个webview容器增强方式,NSR(https://www.infoq.cn/article/9UKos4Xh_6wL4Fh1FOGL)即Native Side Rendering。听着很玄幻但是其实就是将常见的webview本地优化方式的一个极限做法,如果要用人话描述的话,就是本地SSR+请求预加载+同构的集合体。为什么要请求预加载:肯定要做请求预加载的;为什么要本地SSR而不是资源离线化:其实可以,但是离线化无法解决spa应用在webview中初始化与渲染的耗时;为什么要同构而不是用rn或者weex之类的看起来离线化根彻底性能能达到相同目的的方案而是死折腾web:技术栈收敛并且业务场景受限。
Jan 24
之前用canvas手动编写了光照/阴影绘制(https://lrdcq.com/me/read.php/110.htm)与空间阴影/投影绘制(https://lrdcq.com/me/read.php/115.htm),接下来花了相当多的时间了解实时图形学工程实践中光线反射是怎么解决的。当然,除了光追,实际使用的最多的都是类似于预渲染或者探针类构建时方案,要么就是多个摄像机成本极高,唯独屏幕空间反射SSR(Screen Space Reflection)能一定程度的做到较高精度低成本实时反射渲染,也可以快速上手写demo试试。

Demo:https://lrdcq.com/test/ssr-canvas/,确实相当卡,就不嵌入iframe了。
Jan 17
在ReactNative使用过程中,我们遇到一个特殊动作下Android端RN页面直接卡死的场景,本文记录该卡死的排查过程与原理分析。

问题现象
Nov 29
月初的时候llvm仓库出现了一个巨大的pr:[Implement __attribute__((objc_direct)), __attribute__((objc_direct_members))](https://github.com/llvm/llvm-project/commit/d4e1ba3fa9dfec2613bdcc7db0b58dea490c56b1)。简单说起来就是为oc语言添加了direct方法的功能。direct一看就是说的Direct Dispatch的,让oc像普通静态语言那样方法直接调用来提高性能(而不是Message Dispatch)。
Oct 11
最近在内部群里有一些讨论,主要是各种重构重构和重构遇到的困难,和里氏替换原则真的是一个可执行的原则么,特别是iOS日常业务开发上。我们的结论是,麻烦!但是可以解决问题!
里氏替换原则是我们六大设计原则中存在感最弱的: “派生类对象可以在程序中代替其基类对象。” 也就是说,任何子类通过某种方式均可以保持和其父类一样的行为。
Oct 9
用安卓手机的时候注意到不少内容app可以阻止用户截屏,通过为当前windows设置FLAG_SECURE或者一些其他的trick手段,用户就无法截屏了。
iOS目前还没有提供类似的功能,不过注意到系统有提供类似的组件:UITextField在设置为secureTextEntry即密码模式后,整个UITextField的文本区在截屏时是完全截不进去的,估计是考虑到点点点也能暴露用户密码位数的缘故。
Sep 2
上次尝试了空间基础阴影/投影绘制https://lrdcq.com/me/read.php/115.htm的实现尝试,没有提到一个附加课题,对于如那个demo中那样的纯色空间绘制,除去阴影现在更加流行的渲染辅助方式是ACG风格的描边效果。

什么叫ACG风格?可以参考日本画师ideolo的图:
Aug 18
上一次编写了二次元图像的光照/阴影绘制(https://lrdcq.com/me/read.php/110.htm)不过其实缺少一大块即投影的绘制。毕竟上次本质上用cpu模拟了半兰伯特光照模型,从js实际执行的帧率上看,已经非常极限了。而最简单的投影绘制,即ShadowMap方案,本身充分利用了GPU管线的基础上依赖是大家用得慎之又慎的东西,Canvas实现起来自然非常酸爽了。整体效果如下(4x模糊有惊喜):

Demo(https://lrdcq.com/test/shadowmap-canvas)内嵌:
Aug 8
参考基础demo食用:https://lrdcq.com/test/2dnormal-canvas,纯源码网页,另存下来修改更佳。
我们在屏幕上看到的所有图像说到底都是二维图像。在二维图像上表现3d的效果有几种主要方式。一种方式是通过线条来描绘出空间感。另一个种方式就是通过色差来表现光照/阴影了来描绘出层次感了
上一頁 1 ... 3 4 5 6 7 8 ... 13 下一頁