游戏开发论坛

 找回密码
 立即注册
搜索
查看: 4948|回复: 6

老大问个问题

[复制链接]

7

主题

14

帖子

42

积分

注册会员

Rank: 2

积分
42
发表于 2012-5-16 17:00:00 | 显示全部楼层 |阅读模式
比如把N个TEX文件写成一个文件,然后再引擎里面分割成单个的TEX文件供引擎使用,也就是自定义资源格式现在卡在没有一个函数来读入TEX文件,我试着用内存流的链接内存能实现,我想有没有一个函数从内存创建贴图。

2万

主题

2万

帖子

6万

积分

论坛元老

Rank: 8Rank: 8

积分
66489
QQ
发表于 2012-5-16 20:27:00 | 显示全部楼层

Re:老大问个问题

我不明白你为什么不用HAC

从内存读的话,比如你分配了一块儿内存并将文件整个读进去了。

int64 file_size;
void *file_data;

file_size=LoadFileToMemory("1.tex",&file_data);   //加载文件到内存

MemStream *ms=new MemStream(file_block,file_size);//创建内存流

Texture2D *tx=new Texture2D(ms); //创建2d纹理

7

主题

14

帖子

42

积分

注册会员

Rank: 2

积分
42
 楼主| 发表于 2012-5-16 21:19:00 | 显示全部楼层

Re: 老大问个问题

老大我说的是我的一个文件里面包含N个TEX文件的块(自己自定义之后合并成了一个文件),我分割这个文件然后载入到了内存然后如何创建成贴图。

7

主题

14

帖子

42

积分

注册会员

Rank: 2

积分
42
 楼主| 发表于 2012-5-16 21:24:00 | 显示全部楼层

Re: 老大问个问题

使用内存流的链接内存我这转到别的语言后编译后报内存错误。

7

主题

14

帖子

42

积分

注册会员

Rank: 2

积分
42
 楼主| 发表于 2012-5-16 21:37:00 | 显示全部楼层

Re: 老大问个问题

我的语言表达能力真是不行,就说我把TEX图片文件比如有3个我读到3个不同的内存块后把这3块数据写成一个文件到硬盘。(上面是我咋样写成一个文件当然文件的头我会记录这个文件有几个TEX图片,数据的偏移,图片大小等等)
读的思路是我载入我自制的文件分段读取先解文件头有几个图片,图片的偏移等,然后根据偏移把图片读入内存(比如一个文件1-1000是文件的信息1001到13490是一个图片13491到18906是一个图片)也就是移动文件读取位置,除了内存流的链接内存还有什么方法?

71

主题

1330

帖子

2585

积分

金牌会员

Rank: 6Rank: 6

积分
2585
发表于 2012-5-17 15:09:00 | 显示全部楼层

Re:老大问个问题

int64 file_size;
void *file_data;

file_size=LoadFileToMemory("1.tex",&file_data);   //加载文件到内存

MemStream *ms=new MemStream(file_data,1001);//创建内存流

Texture2D *tx=new Texture2D(ms); //创建2d纹理

MemStream *ms2=new MemStream(file_data + 1001,13490-1001);//创建内存流

Texture2D *tx2=new Texture2D(ms2); //创建2d纹理


MemStream *ms3=new MemStream(file_data + 13490,18906 - 13490);//创建内存流

Texture2D *tx3=new Texture2D(ms3); //创建2d纹理


你要的是这样的效果??

0

主题

6

帖子

18

积分

禁止发言

积分
18
发表于 2014-1-2 19:50:29 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

作品发布|文章投稿|广告合作|关于本站|游戏开发论坛 ( 闽ICP备17032699号-3 )

GMT+8, 2024-11-21 20:41

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表