Infinideastudio / NEWorld

NEWorld is a free game with similar game rules to Minecraft.
116 stars 29 forks source link

申请目录结构修改 #78

Closed harrynull closed 8 years ago

harrynull commented 8 years ago

修改后的目录结构: 工作目录: ./bin/ ./bin/NEWorld.dll ./bin/NEWorldServer.dll ./bin/NEWorldLauncher.exe ./bin/res/ ./bin/plugins/ 缓存、中间文件位置不规定,但是要求被ignore;VS中放在各个project的目录下,例如:.\build\visualstudio_v14\NEWorld\Debug\ 理由:方便启动器寻找dll路径,方便安放依赖库dll,方便在客户端中启动服务端,方便发布

之前分散到各个编译器的目录里主要是出于方便同时使用不同编译器开发的场景和切换不同编译模式不清空缓存,实际上这种情况很少发生,并且因此启动器的参数复杂了很多,目录结构较为混乱,发布复杂,且对新开发者不友好。

bridgekat commented 8 years ago

res和plugins直接放到./res和./plugins吧,其他的表示赞同

harrynull commented 8 years ago

@qiaozhanrong 我的意思是发布的时候只发布./bin就行了,这样避免目录上下级切换

bridgekat commented 8 years ago

蛤,什么鬼 只发布./bin的话NEWorld文件夹就一个bin好奇怪 目录上下级切换其实只要在所有相对路径之前加个../就行了

harrynull commented 8 years ago

@qiaozhanrong 不奇怪啊,发布的时候bin改名NEWorld

bridgekat commented 8 years ago

我原打算是一个NEWorld文件夹,bin里放二进制代码,res里放资源,plugins里放插件,data里放生成的数据(好像目前就一个data/worlds),configs里放设置。。。

harrynull commented 8 years ago

你可以把bin当成release文件夹……(话说我们这样刷不会被骂吗233 你不上QQ吗)

bridgekat commented 8 years ago

bin和release有啥联系 不上QQ是防止被家长发现【其实是懒得上2333】

harrynull commented 8 years ago

@qiaozhanrong 就是bin目录用来发布,里面是发布所需要的文件 P.S. NEWorld x64 编译/运行成功

bridgekat commented 8 years ago

_bin和**release**_有啥联系

harrynull commented 8 years ago

@qiaozhanrong release==发布

bridgekat commented 8 years ago

别告诉我是因为“发布的都是二进制文件” 2333

harrynull commented 8 years ago

@qiaozhanrong ……那你改个名字也好啊

bridgekat commented 8 years ago

那还不如我那种啊233

harrynull commented 8 years ago

你那种还要多一层目录,unix/linux用户就会在那里跟你扯工作目录,然后弄个-f参数了

bridgekat commented 8 years ago

23333

Miigon commented 8 years ago

我支持把bin改为release,并把资源文件丢进去 或者资源文件放到data文件夹,外层就是launcher和client/server

bridgekat commented 8 years ago

资源和二进制代码分开吧。。。

harrynull commented 8 years ago

支持@Miigon 的方案

Miigon commented 8 years ago

资源和代码本身就没直接关系 而是跟可执行文件有关系

harrynull commented 8 years ago

已修改……

bridgekat commented 8 years ago

@Miigon 我说的是“资源”和“二进制代码”

Miigon commented 8 years ago

@qiaozhanrong 资源和二进制代码不是匹配的么?放到一起是合理的吧

harrynull commented 8 years ago

@qiaozhanrong 现在资源放在外面,然后一个软链接进去

Miigon commented 8 years ago

@abc612008 什么鬼 软链接不说跨平台了,连Windows都不一定能够兼容

harrynull commented 8 years ago

@Miigon 为啥

Miigon commented 8 years ago

尝试以下这些事情:

harrynull commented 8 years ago

@Miigon mklink只是给开发者用的,因为release/目录下的东西会被ignore掉,但是素材都是要传到git的,所以素材放在外面一层目录,然后clone下来之后软连接到release目录里去

harrynull commented 8 years ago

如果不支持软连接的话完全可以用复制代替

Miigon commented 8 years ago

所以发布的时候还是要自己去拷贝的话和没有修改有什么区别。。。

harrynull commented 8 years ago

@Miigon 不是啊……发布的时候只需要发布release文件夹里的东西就行了……复制/软连接是针对开发者的,想要节省空间就软连接

harrynull commented 8 years ago

要是这点麻烦也忍受不了的话,那就把res挪到release文件夹好了,我只是懒得改.gitignore而已

Miigon commented 8 years ago

不是怕麻烦,是怕忘记

已修改……

你是不是忘了push了

harrynull commented 8 years ago

@Miigon 已修改指的是改成./bin 但是我没改cmake(我不会cmake QAQ)

harrynull commented 8 years ago

我支持把bin改为release,并把资源文件丢进去 或者资源文件放到data文件夹,外层就是launcher和client/server

你自己说支持把资源文件丢进去的

harrynull commented 8 years ago

已改