笔记本拓展屏+平板
安卓平板apk下载地址电脑端下载 Spacedesk 版本介绍Spacedesk 主要提供免费版本,适合大多数用户的基本需求。不过,它也有一些高级功能可能需要付费或通过捐赠支持开发。以下是 Spacedesk 的收费情况概述: 免费功能: 基本屏幕扩展: 支持将平板或手机作为电脑的扩展显示器。 支持 Wi-Fi 和 USB 连接。 多设备连接: 可以同时连接多个设备作为扩展屏幕。 跨平台支持: 支持 Windows 电脑与 Android/iOS 设备连接。 基本分辨率支持: 提供足够的分辨率用于日常办公和娱乐。 可能收费或需要捐赠的功能: 更高分辨率和刷新率: 免费版可能限制分辨率或刷新率,付费或捐赠后可解锁更高性能。 高级功能: 某些高级功能(如低延迟模式或高级设置)可能需要捐赠或购买。 商业用途: 如果用于商业环境,可能需要购买许可证。 捐赠支持: Spacedesk...
git submodule
是的,Git Submodule 是一个 独立的 Git 仓库,因此它确实有自己的版本管理和开发分支。子模块和主项目是相互独立的 Git 仓库,每个子模块可以拥有自己的分支、版本历史以及 Git 配置。 Git Submodule 的版本管理和开发分支 独立版本管理: 每个子模块(例如 Game Framework 插件)有自己的 Git 仓库,使用自己独立的版本号和提交记录。 当你将子模块添加到主项目时,Git 会记录子模块的当前提交版本,并将该信息存储在主项目的 .gitmodules 文件和 .git/config 配置文件中。 例如,当你添加一个子模块时,Git 会记录子模块在主项目中的具体版本(即该子模块的某个提交ID)。 子模块的分支管理: 每个子模块都有自己的分支管理方式,你可以在子模块内创建、切换和管理分支,就像处理主项目中的分支一样。 当你执行 git submodule update --remote 命令时,Git 会将子模块的代码更新为子模块远程仓库的默认分支(通常是 master 或...
unity插件导入方式
Unity UPM 形式导入 vs. 传统 Package 形式导入:区别与优劣在 Unity 中导入插件主要有两种方式: UPM(Unity Package Manager)形式导入 传统 Package 形式(直接拷贝到 Assets/ 目录) 它们各有优势和适用场景,下面详细对比一下。 🔹 UPM 形式导入(Unity Package Manager)✅ 优势: 版本管理:可以通过 Packages/manifest.json 直接管理插件版本,方便回退和升级。 依赖管理:UPM 会自动解析插件的依赖项,避免手动安装额外的库或 DLL 文件。 项目更整洁:导入的插件存放在 Packages/ 目录下,不会污染 Assets/ 目录,使项目结构更清晰。 便捷更新:可以直接从 Unity Registry、Git 或本地路径安装和更新插件,不需要手动替换文件。 团队协作:Git 版本控制时,只需要提交 manifest.json,无需提交整个插件代码,减少代码库体积。 ❌ 缺点: 离线访问受限:如果插件是从 Unity Registry...
Game Framework流程
Game Framework 是一个基于 Unity 的轻量级游戏开发框架,提供了模块化的架构,包括资源管理、UI管理、事件系统、数据存储等功能。其整体流程大致如下: 教程: 花桑GameFramework解析 烟雨迷离半世殇GF教程 烟雨迷离半世殇GF视频教程 GF API 手册 常见问题 源码分析 参考项目: GF官方(包涵GameFrameWork 源码,UnityGameFrameWork Package, StarForce 示例工程) 花桑塔防游戏 导入插件: 下载 解压到游戏 Assets 父级目录下,避免污染 Assets,文件中的框架被封装成dll如下要想阅读源码跳转至此 手动修改 package.json 为”version”: “1.0.0” ,否则会报错:导入插件报错:Cannot perform upm operation: Unable to add package, version 字段不符合 Semantic Versioning(语义化版本) 规范。 保存文件,然后重新尝试导入。 源码导入: Q:如何把...
unity 打AB包流程
下面是详细的打包流程、代码示例,以及生成版本文件的完整实现过程。此内容适用于 Unity 项目中使用 AssetBundles 打包并支持版本文件生成与热更新的场景。 1. 打包流程概述 配置资源文件: 将需要打包的资源组织到指定目录中。 设置每个资源的 AssetBundle 名称。 打包 AssetBundles: 使用 Unity 提供的 BuildPipeline.BuildAssetBundles 方法,将资源打包成 .ab 文件。 生成版本文件: 记录所有打包生成的 .ab 文件及其校验值(MD5 或 SHA256)。 生成一个 JSON 格式的版本文件,包含版本号、资源文件名及校验值。 上传资源和版本文件: 将打包好的 .ab 文件和版本文件上传到服务器。 2. 实现步骤Step 1: 配置资源文件在 Unity 中为资源设置 AssetBundle 名称: 选中需要打包的资源(例如:Prefab、Texture)。 在 Inspector 面板中,设置 AssetBundle...
github 作为热更新服
要使用 GitHub 作为 Unity 项目的热更新资源服务器,你可以通过 GitHub 的 Releases 功能来托管和管理资源(如 AssetBundles)。这样,你可以通过 Unity 在运行时动态下载这些资源,而无需每次更新游戏客户端。下面是如何使用 GitHub 来托管 Unity 热更新资源的详细步骤: 1. 准备资源(例如 AssetBundles)首先,你需要将 Unity 项目的资源打包成 AssetBundles。这是 Unity 热更新的常见方式。通过 AssetBundles,你可以在游戏运行时动态加载资源,而不需要重新发布整个游戏。 创建 AssetBundles: 在 Unity 中创建 AssetBundle: 选择你想要打包的资源(例如场景、模型、纹理等)。 在 Inspector 面板中,给它们指定一个 AssetBundle 名称。例如,将所有角色模型的 AssetBundle 命名为 character_assets。 打包 AssetBundles: 通过 BuildPipeline.BuildAssetBundles...
hexo butterfly 添加rightside 按钮
F12调试,查找对应元素的id:页面点击关联至页面元素html标签 themes\butterfly\layout\includes\rightside.pug themes\butterfly\source\js\main.js 查找 hide-aside-btn pug写布局styl写样式main.js控件调用的功能逻辑 12345678910111213141516pug代码,遍历生成自定义按钮:mixin rightsideItem(array) each item in array case item when 'customButton' button#custom-button(type="button" title="全屏阅读") i.fas.fa-star添加按钮到列表:#rightside - const { enable, hide, show } = theme.rightside_item_order -...
Assetbundle
了解什么是Assetbundle严格来说,AssetBundle是Asset的一个集合,是个压缩包。相比直接使用Asset,它有如下几个好处: 特性 AssetBundle 直接使用 Asset 内存管理 资源按需加载,支持加载和卸载,减少内存占用 所有资源在场景启动时加载,无法按需卸载,内存占用大 加载性能 通过按需加载,可以加载所需资源,减少初次加载时间 所有资源在启动时一次性加载,可能导致加载延迟和卡顿 资源的依赖关系 支持自动管理资源依赖,通过 Manifest 文件解决依赖关系 需要手动管理资源的依赖关系,容易导致丢失依赖 更新与热更新 支持热更新,通过增量更新机制可以减少更新数据量 不支持热更新,更新时必须重新打包整个项目 包体大小 可以对 Asset 进行压缩,减小包体大小 资源不压缩,包体较大 跨平台支持 可以为不同平台打包不同的 AssetBundle 所有平台共享相同的资源,可能导致不必要的资源浪费 网络加载 可以通过网络加载...
C# CLR
CLR 是 Common Language Runtime 的缩写,翻译为 公共语言运行时。它是 .NET 框架的核心组件,负责执行由 .NET 编程语言(如 C#、VB.NET、F# 等)编写的程序。 CLR 的主要功能: 代码执行:CLR 是 .NET 程序的执行环境,它将中间语言(IL)代码转换为机器代码,使程序能够在不同的操作系统和硬件平台上运行。 内存管理:CLR 提供了自动垃圾回收功能(GC,Garbage Collection),自动回收不再使用的对象所占用的内存,减少内存泄漏问题。 类型安全:CLR 确保程序的类型安全,防止程序访问未授权的内存或类型错误。 异常处理:CLR 提供了统一的异常处理机制,确保不同语言的程序能够一致地处理错误。 跨语言互操作性:CLR 使得不同编程语言编写的代码能够互操作。例如,C# 编写的代码可以调用 VB.NET 编写的类和方法。 安全性:CLR 提供了多层次的安全性检查(例如代码访问安全性,CAS)来防止恶意代码的执行。 CLR 主要包含的部分: JIT 编译器(Just-in-Time Compiler):CLR...
Unity ScriptableObject
官方文档 在 Unity 中,ScriptableObject 是一种特殊的对象,它允许你在 Unity 编辑器中创建 可序列化 的 自定义数据容器,并且能够在多个场景、多个游戏对象之间共享数据。ScriptableObject 是继承自 UnityEngine.ScriptableObject 类的一种对象,通常用于存储数据,而不是存储行为(功能)。它是为了减少对 MonoBehaviour 的依赖,提升项目的灵活性和性能。 1. 基本概念ScriptableObject 并不像普通的 MonoBehaviour 那样附加到 GameObject 上,而是独立的、非场景物体的对象。它可以在项目中作为资产(Asset)保存,并且多个实例之间可以共享同一份数据,避免了重复存储。 普通对象(如 MonoBehaviour)通常与场景中的对象(GameObject)绑定,每个 GameObject 上可以有多个组件(Component)。 ScriptableObject 是独立的、与场景无关的对象,它可以作为一个单独的资源在项目中保存和使用。 2....