avatar
Articles
170
Categories
9

Home
Categories
Salute Those Who Gaze At The Stars
Home
Categories

Salute Those Who Gaze At The Stars

Fps射击游戏开发:第二回
Created2025-09-09|图形化开发
本文介绍在上一篇文章中我们介绍了一些基本的先验内容,并且搭建了一个基础场景。本文目标,挂载枪支,并实现子弹射击逻辑 枪支挂载 首先需要创建枪支的刚体,用了三个cube搭建,同时把他用一个整体包裹,方便后续敌人复用。 编写对应Gun和GunController,具体代码如下: Gun.cs using System.Collections; using System.Collections.Generic; using UnityEngine; public class Gun : MonoBehaviour { // Start is called before the first frame update void Start() { } // Update is called once per frame void Update() { } } GunController using System.Colle ...
Fps射击游戏开发:第一回
Created2025-09-03|图形化开发
由于项目需要,研究了下unity,借此写个小游戏,所以本文开始,将详细记录,使用unity开发fps射击游戏的所有细节认识编辑器 基本的界面如上图所示,就四大块工作区:视图区(红色)、文件区(橙色)、对象区(蓝色)及最右侧的inspector区域。其中inspector可以看作是属性详情,例如我们选中某个刚体(物体,如圆柱、地面),能够看到该刚体的位置等的所有信息,当然,还包括了其绑定的c#代码文件。 我们首先创建了一个圆柱体和一个地面。本质就是俩三维刚体,通过GameObject选项卡中的capsule和plane创建。并分别给他们加了点material(材质、颜色)。最后设置了一个光照,使其看起来有质感些。 Start和Update这俩函数是我们之后几乎标配的函数。前者在项目开始运行时,执行一次。后者就是大名鼎鼎的tick时刻,每帧执行,类似于前端的raf函数。 给圆柱体绑定c#代码创建scripts文件夹专门存放代码文件,然后选中物体,将c#文件直接拖入inspector中绑定。代码文件具体如下。 palyer.cs using System.Collections; u ...
Thoughts on the Frontend Product Perspective
Created2025-08-21|Miscellany
Keep it simpleHaving been in development for four years and worked on plenty of projects, I suddenly had some thoughts about the product side. It started when I noticed many domestic friends building independent sites and overseas ventures. After briefly getting involved, I realized that some shopping platforms can be extremely minimalist. Because of work, I got exposed to many overseas businesses. Compared with domestic projects, they share one glaring trait: clean, flashy, and built on modern ...
力扣经典100题- 字母异位词分组
Created2025-08-21|前端剑气双修
字母异位词分组思路:大力出奇迹,首先写一个算法,暴力的出任意字符串的全排列集合。然后依次遍历strs,双循环得出所有剩余项目中的亦或字符串,完毕。 /** * @param {string[]} strs * @return {string[][]} */ const returnAllChildArr = (arr) => { const res = [] const used = new Array(arr.length).fill(false) const walk = (curArr, len) => { if (curArr.length === len) { if (!res.includes(curArr.join(''))) { res.push(curArr.join('')) } return } for (let i = 0; i < len; i++) { ...
React系列:第十二回(调和过程和diff)
Created2025-07-21
本文介绍react的调和过程和diff算法所谓的调和,本质是将虚拟节点转换为真是dom的过程 React15栈调和机制下diff的核心逻辑先看下图的两个节点: 先对比连个根节点,是否为同一个元素,判断依据标签名和key。若是同一节点,更新各个属性,进入子节点的diff,若不是,简单粗暴,删除旧节点,根据新结点的虚拟dom挨个创建。 进入子节点的对比后,从头至尾依次对比。旧节点所有子节点从左到右一次同新虚拟dom的子节点对比。判断是否为同一节点,是则更新相关属性下一个。不是,删除旧节点。图中依次是B、D、E,到D时,发现不同,删除D创建C。到E时发现不同删除E创建D。 最后因为新节点还有一个E剩余,创建之。完毕。注意:react15的栈调和是深度优先遍历的。倘若D有子组件,那么会继续往下走,最后再往回冒。 上述过程存在的一个问题,新节点中明明也有D、E,但是我们还是经过了删除、创建,明显浪费。此时,就祭出了我们的key. key属性帮助react记住节点。D、E只需要执行插入即可
The Method Of Learning
Created2025-07-18|Miscellany
The Study Method That Works For Technical Subjects Step 1 - Preparation: Find an authoritative reference book that covers most of the fundamentals, and skim through the whole book quickly Step 2: Locate a reliable mentor, work through the entire course, and correct misunderstandings. Pay extreme attention to hands-on practice Step 3: Take a comprehensive test to verify you truly understand what you learned Step 4: Focus on misunderstanding points, practice repeatedly through hands-on exercisesOv ...
第一回:开宗明义的聊聊
Created2025-03-21|前端剑气双修
本文简单聊聊“整洁代码”的几个点究竟什么样的代码才是高质量可维护的代码(没有味道的代码)?什么样的组件才能叫作好的组件?函数怎么写才是干净、高效、得体的?瓦卡利马僧。但是,本文中我们尝试着去瓦卡利。 组件化编程随着业务量代码的积累,自己突然感觉有点力不从心:代码太容易成为“屎山”了。就拿目前项目的一个场景举例:写一个创建任务的表单组件。听起来很简单是吧?是很简单,但写起来,极度费劲。原因在于,该创建表单项过多,且伴随着各种联动需求。一开始愣头愣脑的上去就是干。写到一半,发现已经写不下去了—->该文件已经超过了 1000 行,变量无数,单单 flag 就十几二十来个,如若再这么写下去,我估计即使勉强实现了需求,后面接手的人都会顺着网线来砍我。此时,我的心情是崩溃且尴尬的。你能够想象,在一个单文件代码超过1000 行游走是什么感觉吗?望着这座自己亲手堆砌的半坐“屎山“,觉得自己有义务寻求一些解决方案,免得被后人耻笑。简单的讲就是一个字:拆。在《重构》这本书的指导下,疯狂拆分这座屎山,当然,这个过程也是无偿加班的过程。最终单文件代码量干到了 300 来行,虽然被拆出去的儿子组件的可复用 ...
vue3备忘录:同前代的优化
Created2025-02-12
优化总结 为了更好支持ts,类型检查,类型推导 优化代码可读性、可维护性(composition API 取代options API) 优化代码可复用性。vue2使用mixin去复用代码逻辑存在俩问题:命名冲突、数据来源不清晰。vue3抄了一把react,也用了hook的方式去复用代码 打包速度更快 diff算法优化。 响应式系统优化。通过proxy解决俩问题:新增删除的数据监听问题。2.对象嵌套过深引起的性能问题.需要注意的是,使用proxy代理整个对象的前提是该对象非嵌套,如果是嵌套的,需要在get再加一层代理逻辑 treeshaking。实际就是删除无用代码
Games104-现代游戏引擎*
Created2025-01-15|图形化开发
SEO相关手段
Created2024-12-22|前端剑气双修
目下前端SEO三大核心手段语义化 HTML(让爬虫识别内容结构)用语义标签替代无意义 div,明确内容层级,提升爬虫解析效率。 <h1>2025战国策略手游 - 官方首页</h1> <!-- 唯一h1,定义页面核心主题 --> <main> <!-- 核心内容区 --> <article> <h2>游戏核心玩法:战国七雄争霸</h2> </article> </main> Meta 标签精准配置(提升搜索结果相关性)title/description 含核心关键词,控制字符长度,直接影响搜索展示。 <title>战国策略手游 - 还原真实历史 | 2025公测</title> <!-- 60字符内 --> <meta name="description" content="战国策略手游主打真实历史还原,招募名将、攻城略地,2025年全平台公测!"> <!-- 120字符内 --> JS 渲染适配(解决 SPA 爬虫抓取问题)SPA 页面需让爬虫获取完整内容,避免空页面抓取。如果 ...
1234…17
avatar
Miles | Isshin
Articles
170
Categories
9
Follow Me
Announcement
変わらない闘志,折れない魂
Recent Post
第一回引言:从“对话”到“推理”的范式转变2026-05-14
SPA发版后偶发白屏:场景、根因与治理方案2026-05-09
从“不存在”的重复请求,聊到 Web 存储的深坑2026-04-23
未来已来-论ai时代的最佳编程实践2026-04-16
现代单页应用(SPA)中微信授权登录的高可用架构实现2026-04-16
Categories
  • AI4
  • IC系列4
  • Miscellany8
  • React系列11
  • 前端剑气双修71
  • 图形化开发31
  • 性能的考量12
  • 语言1
Info
Article :
170
UV :
PV :
Last Push :
©2020 - 2026 By Miles | Isshin
Framework Hexo|Theme Butterfly