像素画绘制流程 参考 B 站教程 基本步骤如下: 草稿 (确定人物比例, 位置, 构图) 粗线搞 线稿检查, 精细线稿 上固有色 上高光, 阴影 检查, 动画制作 导出 草稿用基本图形确定人物大小, 各重要部位的比例, 确定有哪些元素 (内容). 不一定要精细, 主要是要毫无保留的把想要的东西想要的元素都添加进去, 给自己确定一个主要的方向. 决定画大小的, 是最小物品的精细程度. 粗线搞大致绘出人物轮廓, 2024-07-21 Sprite
Aseprite-基本使用 创建文件快捷键: <C-n> 或者点击: 会出现: 这里主要设置: Width Height Color Background Shape等基本参数. 注意 Indexed mode, 即画布只存储指定的颜色, 比如设置指存储红黄蓝, 那么其他颜色信息就不会保存. Pixel Aspect Ratio 指最小像素单位的形状. 点击 OK 即可进入工作界面. 工作界面 主要包括: 2024-07-20 Aseprite
Aseprite-编译流程 Github Aseprite 仓库 Asperite 是一个专门绘制 2D 像素画的图形编辑器, 有付费版, 也能在 Github 找到开源版本 (需要自行编译) 编译流程具体可以看 仓库里的 INSTALL.md, 需要注意的是, 除了安装依赖以外, 还需要先编译 Skia 库. 下面是 Archlinux 上的编译流程. 编译 Skia先编译 Skia: 12345mkdir $HOME/d 2024-07-20 Linux
React-中的-ref 当需要组件 “记住” 某些信息, 但又不想让这些信息触发新的渲染 时, 可以使用 ref. 与 state 一样, React 会在每次重新渲染之间保留 ref, 但要注意两者的区别, 更改 ref 不会出发渲染. (ref 本身是一个普通的 JavaScript 对象) 使用 ref123import { useRef } from 'react';con 2024-07-17 React
React-使用-Context-深层传递参数 Context 允许父组件向其下层无论多深的任何组件提供信息, 而无需通过 props 显式传递. 也可以理解为, 子组件可以通过 Context 访问到组件树中某处在其上层的数据. 创建 context123import { createContext } from 'react';export const LevelContext = createCon 2024-07-17 React
React-中的-Reducer 在使用多状态编写逻辑时, 多使用 Reducer 来精简代码. 示例123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778import { useRe 2024-07-17 React
JavaScript-中的异步操作 PromisePromise 是 JavaScript 中用于处理异步操作的一种对象, 它代表一个未来可能完成的操作及其结果 (或失败的原因). Promise 的状态一个 Promise 对象有以下三种状态: Pending (进行中): 初始状态, 既不是成功也不是失败 Fulfilled (已成功): 操作成功完成 Rejected (已失败): 操作失败 Promise 的基本使用创建 2024-07-17 JavaScript
数据结构与算法基础知识 算法的定义算法 (Algorithm) 是对特定问题的求解方法和步骤的一种描述, 是指令的有限序列, 其中每个指令表示一个或多个操作. 对于同一个问题, 使用不同的算法, 所消耗的资源也是不同的, 这里的资源指时间和空间: 时间维度, 指执行当前算法所消耗的时间, 通常用 “时间复杂度” 来描述 空间维度, 是指执行当前算法需要占用多少内存空间, 通常用 “空间复杂度” 来描述 大O表示法大O 2024-07-16 Algorithm