【Unity开发】StreamingAssets、Assets Bundle、Resources区别对比
个人主页 阿松爱睡觉横竖醒不来你可以不屠龙但不能不磨剑文章一、前言二、StreamingAssets文件夹1. 用途2. 访问方式3. 优点4. 缺点三、AssetBundle1. 用途2. 访问方式3. 优点4. 缺点四、Resources文件夹1. 用途2. 访问方式3. 优点4. 缺点五、总结一句话记忆如何选择一、前言很多 Unity 初学者都会遇到一个困惑StreamingAssets、AssetBundle、Resources 这三个文件夹到底有什么区别它们都能存放资源但用法和适用场景却大不相同。简单打个比方Resources就像你随身背的小背包东西少、拿取方便但背的东西越多越累打包体积变大。StreamingAssets就像仓库货架东西直接摆在那里随时能拿但不会自动帮你整理不参与打包。AssetBundle就像快递包裹需要时再拆开取用还能从外地寄过来从服务器下载适合大件和更新。下面我们逐一详细讲解并给出简单的代码示例帮你彻底分清它们。二、StreamingAssets文件夹1. 用途StreamingAssets 文件夹用于存储不需要打包的资源比如音频、视频、数据库等大型文件。构建项目时这些文件会被原样复制到构建目录中运行时可以直接访问。2. 访问方式可以使用System.IO相关的类来读写文件在移动平台上使用Application.streamingAssetsPath获取路径。usingUnityEngine;usingSystem.IO;publicclassReadStreamingAssets:MonoBehaviour{voidStart(){// 获取 StreamingAssets 文件夹的路径stringpathPath.Combine(Application.streamingAssetsPath,data.txt);// 读取文件内容if(File.Exists(path)){stringcontentFile.ReadAllText(path);Debug.Log(读取到内容content);}}}3. 优点简单直接不需要打包和解包。适合存储不需要加密或优化的文件。4. 缺点文件会原样暴露在安装包中容易被玩家修改。无法按需加载所有文件都会占用安装包空间。三、AssetBundle1. 用途AssetBundle 是一种打包和分发资源的机制。它可以把多个资源打包成一个文件运行时按需动态加载常用于大型游戏减少初始加载时间。2. 访问方式使用AssetBundle.LoadFromFile或AssetBundle.LoadFromMemory加载也可以从服务器下载后加载。usingUnityEngine;publicclassLoadAssetBundle:MonoBehaviour{voidStart(){// 从本地文件加载 AssetBundleAssetBundlebundleAssetBundle.LoadFromFile(Application.streamingAssetsPath/mybundle);if(bundle!null){// 从 AssetBundle 中加载一个 GameObjectGameObjectprefabbundle.LoadAssetGameObject(MyPrefab);Instantiate(prefab);// 使用完毕后卸载bundle.Unload(false);}}}3. 优点可以按需加载资源优化内存使用。支持热更新可以从服务器下载新资源无需重新发布游戏。4. 缺点需要手动管理打包和加载流程学习成本较高。需要处理依赖关系和版本管理复杂度较高。四、Resources文件夹1. 用途Resources 文件夹用于存储运行时动态加载的资源。构建项目时这些资源会被自动打包到最终的构建文件中。2. 访问方式使用Resources.Load或Resources.LoadAll加载资源使用Resources.UnloadAsset卸载资源。usingUnityEngine;publicclassLoadResources:MonoBehaviour{voidStart(){// 从 Resources 文件夹加载一个预制体GameObjectprefabResources.LoadGameObject(Prefabs/MyPrefab);Instantiate(prefab);}}3. 优点简单易用适合小型游戏或不需要频繁更新的资源。资源在构建时被打包减少了运行时的文件访问。4. 缺点所有 Resources 中的资源都会被打包即使没用到也会占用空间。无法热更新发布后不能单独替换资源。五、总结对比项StreamingAssetsAssetBundleResources是否打包不打包原样复制打包成独立文件自动打包进构建文件加载方式文件系统直接读写按需动态加载Resources.Load是否支持热更新支持替换文件支持下载新包不支持适用场景音频、视频、数据库等大文件大型游戏、热更新小型游戏、固定资源学习难度⭐⭐⭐⭐⭐一句话记忆StreamingAssets仓库货架直接放、直接拿适合大文件。AssetBundle快递包裹需要时拆开还能远程寄送适合热更新。Resources随身背包方便但装不了太多适合小项目。如何选择存大文件视频、音频、数据库→ 用StreamingAssets做大型游戏或需要热更新→ 用AssetBundle做小项目、资源固定不变 → 用Resources希望这篇文章能帮你彻底分清这三个文件夹的区别在实际开发中选对方案

相关新闻

ECharts地图JS选型与下钻渲染避坑全指南

ECharts地图JS选型与下钻渲染避坑全指南

简介:一套覆盖全国、地市、区县三级地图的js资源共343个文件,专为ECharts使用设计,压缩包约25.79MB。所有文件按“行政区划代码_省份_城市”命名,涵盖黑龙江、吉林、新疆等多省市,便于按区域定位并引入对应地图。开发者…

2026/10/15 1:59:12 阅读更多 →
STM32U5xx HAL 驱动组件解析:在 Arduino_Core_STM32 中的角色、结构与配置

STM32U5xx HAL 驱动组件解析:在 Arduino_Core_STM32 中的角色、结构与配置

嵌入式固件驱动开发硬件开发 【免费下载链接】Arduino_Core_STM32 STM32 core support for Arduino 项目地址: https://gitcode.com/gh_mirrors/ar/Arduino_Core_STM32 点击查看 免费下载 STM32Cube 是意法半导体(STMicroelectronics)面向整…

2026/10/15 1:58:11 阅读更多 →
Python 3.13 异步上下文变量(contextvars)实战:全链路追踪 TraceID 的无损透传

Python 3.13 异步上下文变量(contextvars)实战:全链路追踪 TraceID 的无损透传

在分布式微服务架构与全链路可观测性(Observability)体系中,**全局链路追踪标识(TraceID)**是定位线上疑难杂症、还原请求拓扑调用链路的唯一黄金钥匙。无论一个 HTTP 请求深入穿透了多少层内部领域服务、发起了多少次…

2026/10/15 1:58:11 阅读更多 →

最新新闻

Rust 泛型关联类型(GAT)深度解析:从 RFC 1598 看关联类型构造器如何开启高阶多态

Rust 泛型关联类型(GAT)深度解析:从 RFC 1598 看关联类型构造器如何开启高阶多态

文档 【免费下载链接】rfcs RFCs for changes to Rust 项目地址: https://gitcode.com/gh_mirrors/rf/rfcs 点击查看 免费下载 泛型关联类型(Generic Associated Types,简称 GAT)是 Rust 类型系统中一项承前启后的核心特性&#…

2026/10/15 2:35:23 阅读更多 →
BilibiliSponsorBlock 发版全流程实战:从版本号 bump、GitHub Release 到 Chrome/Firefox/Edge 商店提审

BilibiliSponsorBlock 发版全流程实战:从版本号 bump、GitHub Release 到 Chrome/Firefox/Edge 商店提审

前端 【免费下载链接】BilibiliSponsorBlock 一款跳过小电视视频中恰饭片段的浏览器插件,移植自 SponsorBlock。A browser extension to skip sponsored segments in videos, ported from the SponsorBlock 项目地址: https://gitcode.com/gh_mirrors/bi…

2026/10/15 2:35:23 阅读更多 →
N_m3u8DL-RE 下载 m3u8 实战:四条命令,从链接到成品 mp4

N_m3u8DL-RE 下载 m3u8 实战:四条命令,从链接到成品 mp4

N_m3u8DL-RE 下载 m3u8 实战:四条命令,从链接到成品 mp4 【免费下载链接】N_m3u8DL-RE Cross-Platform, modern and powerful stream downloader for MPD/M3U8/ISM. English/简体中文/繁體中文. 项目地址: https://gitcode.com/GitHub_Trending/nm3/N…

2026/10/15 2:35:23 阅读更多 →
JASONETTE-iOS 集成指南:SDWebImage 3.8 远程图片异步加载与缓存实战

JASONETTE-iOS 集成指南:SDWebImage 3.8 远程图片异步加载与缓存实战

移动开发前端 【免费下载链接】JASONETTE-iOS 📡 Native App over HTTP, on iOS 项目地址: https://gitcode.com/gh_mirrors/ja/JASONETTE-iOS 点击查看 免费下载 导读 本文以 JASONETTE-iOS 仓库中随包引入的 SDWebImage(版本 3.8.1&#…

2026/10/15 2:35:23 阅读更多 →
ai-agent-book学习记录t1

ai-agent-book学习记录t1

Chapter 2 学习笔记:上下文工程与 KV Cache本章核心是"上下文决定 Agent 能力上限"。我通过 kv-cache 离线对比实验,直观看到上下文管理模式对性能的巨大影响。实验对比了六种模式。correct(稳定系统提示、固定工具顺序&#xff09…

2026/10/15 2:35:23 阅读更多 →
Amazon Connect 实例的 CDK 自动化部署:Python 基础设施即代码实战指南

Amazon Connect 实例的 CDK 自动化部署:Python 基础设施即代码实战指南

【免费下载链接】aws-cdk-examples Example projects using the AWS CDK 项目地址: https://gitcode.com/gh_mirrors/aw/aws-cdk-examples 点击查看 免费下载 导读 本文基于 aws-cdk-examples 仓库中的 python/amazon-connect 示例,系统讲解如何使用 A…

2026/10/15 2:34:23 阅读更多 →

日新闻

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

Docker Compose 容器化部署 ChirpStack LoRaWAN 网络服务器实战

1. 为什么选择容器化方式部署 LoRa 网络服务LoRa 物联网项目落地时,网络服务器是整个链路的核心枢纽。它负责接收网关上报的数据包、完成去重与解密、再把有效载荷分发给上层应用。早期大家习惯把网络服务器直接装在物理机上,依赖一堆系统库和特定版本的…

2026/10/15 0:00:46 阅读更多 →
共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

共享LLM服务下的跨模型自动扩缩容:Kubernetes实战与避坑指南

1. 共享推理服务里,扩缩容到底难在哪做过大模型推理服务部署的人,大概都经历过这样的场景:一个团队共用一套推理集群,A 业务跑的是 7B 的小模型,B 业务跑的是 72B 的大模型,C 业务白天流量高、晚上几乎归零…

2026/10/15 0:00:46 阅读更多 →
Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

Systemd 启动阶段根文件系统只读之谜:fstab 与 remount-fs 服务深度解析

1. 引子:一次内核恐慌引发的追查先从一个真实场景说起。某次我给一台老旧的嵌入式设备折腾系统裁减,为了把启动时间压进两秒以内,我手贱地把一串自认为“没用”的 systemd 服务给 disable 了,其中就包括systemd-remount-fs.servic…

2026/10/15 0:00:46 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/15 0:14:36 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 22:45:47 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →