找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 1976|回复: 17

[发布] 瑞对地图的深入理解

[复制链接]

该用户从未签到

发表于 2012-6-8 22:39:21 | 显示全部楼层 |阅读模式
赛盟真的是越来越没人了
发布一张地图都没人鸟,哎、、、

今天兴起,深刻地去理解了map里的代码

现在已经可以手写敲代码编辑一张地图了

首先,大家要知道rmf是VHE的项目文件
map是CS的地图源文件,VHE也可以打开它,但是它的实质是一些代码
bsp是我们的地图文件,它由map经编译程序编译得到

今天我就讲讲map文件的代码的具体意思
下面是一个最简单的地图,相信每个地图制作者都做过
它包含6个固体组合包住整个地图
一个出生点、一个点光源、一个门
  1. {
  2. "classname" "worldspawn"
  3. "MaxRange" "4096"
  4. "mapversion" "220"
  5. "wad" "\cs1.6\cs\valve\halflife.wad;"
  6. {
  7. ( 0 0 256 ) ( 0 512 256 ) ( 512 512 256 ) -2BABFL [ 1 0 0 13 ] [ 0 -1 0 14 ] 0 2 2
  8. ( 0 512 224 ) ( 0 512 256 ) ( 0 0 256 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 -96 ] 0 1 1
  9. ( 512 0 224 ) ( 512 0 256 ) ( 512 512 256 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 -96 ] 0 1 1
  10. ( 512 512 224 ) ( 512 512 256 ) ( 0 512 256 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  11. ( 0 0 224 ) ( 0 0 256 ) ( 512 0 256 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  12. ( 0 512 224 ) ( 0 0 224 ) ( 512 0 224 ) -2BABFL [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
  13. }
  14. {
  15. ( 0 0 224 ) ( 0 0 0 ) ( 0 512 0 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 -96 ] 0 1 1
  16. ( 0 512 224 ) ( 0 512 0 ) ( 32 512 0 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  17. ( 32 0 0 ) ( 0 0 0 ) ( 0 0 224 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  18. ( 0 512 0 ) ( 0 0 0 ) ( 32 0 0 ) -2BABFL [ 1 0 0 -128 ] [ 0 -1 0 0 ] 0 1 1
  19. ( 0 0 224 ) ( 0 512 224 ) ( 32 512 224 ) -2BABFL [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
  20. ( 32 512 224 ) ( 32 512 0 ) ( 32 0 0 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  21. }
  22. {
  23. ( 512 512 224 ) ( 512 512 0 ) ( 512 0 0 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 -96 ] 0 1 1
  24. ( 480 512 0 ) ( 512 512 0 ) ( 512 512 224 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  25. ( 512 0 224 ) ( 512 0 0 ) ( 480 0 0 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  26. ( 480 0 0 ) ( 512 0 0 ) ( 512 512 0 ) -2BABFL [ 1 0 0 -128 ] [ 0 -1 0 0 ] 0 1 1
  27. ( 480 512 224 ) ( 512 512 224 ) ( 512 0 224 ) -2BABFL [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
  28. ( 480 0 224 ) ( 480 0 0 ) ( 480 512 0 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  29. }
  30. {
  31. ( 32 512 0 ) ( 480 512 0 ) ( 480 512 224 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  32. ( 480 512 0 ) ( 32 512 0 ) ( 32 480 0 ) -2BABFL [ 1 0 0 -128 ] [ 0 -1 0 0 ] 0 1 1
  33. ( 32 480 224 ) ( 32 512 224 ) ( 480 512 224 ) -2BABFL [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
  34. ( 32 480 0 ) ( 32 512 0 ) ( 32 512 224 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  35. ( 480 512 224 ) ( 480 512 0 ) ( 480 480 0 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  36. ( 480 480 0 ) ( 32 480 0 ) ( 32 480 224 ) -2BABFL [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
  37. }
  38. {
  39. ( 480 0 0 ) ( 32 0 0 ) ( 32 0 224 ) -2BABFL [ 1 0 0 -128 ] [ 0 0 -1 -96 ] 0 1 1
  40. ( 32 32 0 ) ( 32 0 0 ) ( 480 0 0 ) -2BABFL [ 1 0 0 -128 ] [ 0 -1 0 0 ] 0 1 1
  41. ( 480 0 224 ) ( 32 0 224 ) ( 32 32 224 ) -2BABFL [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
  42. ( 32 0 224 ) ( 32 0 0 ) ( 32 32 0 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  43. ( 480 32 0 ) ( 480 0 0 ) ( 480 0 224 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  44. ( 32 32 0 ) ( 480 32 0 ) ( 480 32 224 ) -2BABFL [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
  45. }
  46. {
  47. ( 32 480 0 ) ( 32 32 0 ) ( 480 32 0 ) -2BABFL [ 1 0 0 -128 ] [ 0 -1 0 0 ] 0 1 1
  48. ( 32 32 0 ) ( 32 480 0 ) ( 32 480 32 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  49. ( 480 480 0 ) ( 480 32 0 ) ( 480 32 32 ) -2BABFL [ 0 1 0 0 ] [ 0 0 -1 0 ] 0 1 1
  50. ( 32 480 0 ) ( 480 480 0 ) ( 480 480 32 ) -2BABFL [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
  51. ( 480 32 0 ) ( 32 32 0 ) ( 32 32 32 ) -2BABFL [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
  52. ( 32 32 32 ) ( 32 480 32 ) ( 480 480 32 ) -2BABFL [ 1 0 0 0 ] [ 0 -1 0 0 ] 0 1 1
  53. }
  54. }
  55. {
  56. "classname" "info_player_start"
  57. "angles" "0 0 0"
  58. "origin" "256 256 128"
  59. }
  60. {
  61. "classname" "light"
  62. "_light" "255 255 255 200"
  63. "_fade" "1.0"
  64. "origin" "256 160 208"
  65. }
  66. {
  67. "classname" "func_door"
  68. "renderamt" "255"
  69. "rendercolor" "0 0 0"
  70. "angles" "0 0 0"
  71. "speed" "100"
  72. "wait" "4"
  73. {
  74. ( 320 192 96 ) ( 352 192 96 ) ( 352 160 96 ) AAATRIGGER [ 1 0 0 0 ] [ 0 -1 0 16 ] 0 1 1
  75. ( 320 160 64 ) ( 352 160 64 ) ( 352 192 64 ) AAATRIGGER [ 1 0 0 0 ] [ 0 -1 0 16 ] 0 1 1
  76. ( 320 192 96 ) ( 320 160 96 ) ( 320 160 64 ) AAATRIGGER [ 0 1 0 -16 ] [ 0 0 -1 0 ] 0 1 1
  77. ( 352 192 64 ) ( 352 160 64 ) ( 352 160 96 ) AAATRIGGER [ 0 1 0 -16 ] [ 0 0 -1 0 ] 0 1 1
  78. ( 352 192 96 ) ( 320 192 96 ) ( 320 192 64 ) AAATRIGGER [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
  79. ( 352 160 64 ) ( 320 160 64 ) ( 320 160 96 ) AAATRIGGER [ 1 0 0 0 ] [ 0 0 -1 0 ] 0 1 1
  80. }
  81. }
复制代码

首先,整个map由一对大括号包含
最前面有几对双引号,里面写着的是地图基本信息

这个例子的头部信息依次为:地图名、最大可视距离、地图版本、地图必要纹理



然后里面的每个大括号里的内容表示一个固体、固体实体、点实体

点实体最简单,一对大括号,里面两对双引号,分别表示该实体的“键”和“值”,其中第一行的classname是点实体类型



固体有一对大括号,里面有N行格式一致的数据,
N表示该固体有几个面,我们知道,一个固体是几个面封装起来的,所以,所有的面如果确定下来,这个固体也就确定下来了。我们都知道,两点确定一条线,三个点确定一个面,所以,每一行数据的开始都是由3个点的坐标(x,y,z)组成的,从而确定一个面。
接下来是纹理名字。
接下来两对中括号里的是纹理的坐标,每一对中括号里的数据由4个数组成前三个是起始坐标,后一个是纹理偏移量,两个坐标就可以确定一个方向,即确定了纹理的坐标和方向。
最后还有3个数字,分别表示纹理的x缩放y缩放和旋转角度



最后就是固体实体,这个最复杂,但是它的书写结构就等于“点实体”+“固体”



今天先讲解到这里,有什么建议和意见及时联系我。

QQ451089446

该用户从未签到

发表于 2012-6-8 23:35:01 | 显示全部楼层
这个得顶一个 毕竟CN的maper不多
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

发表于 2012-6-9 00:40:46 | 显示全部楼层

看开吧,现实即使如此
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

发表于 2012-6-9 01:09:48 | 显示全部楼层
捧个场。一直没学会做地图

点评

我做了这么几年地图,翻阅资料,在国内算是没看见过有人剖析过map文件的代码 今日一看,豁然开朗  详情 回复 发表于 2012-6-9 13:39
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

发表于 2012-6-9 06:49:16 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

发表于 2012-6-9 11:52:46 | 显示全部楼层
地图纹理都不会用,而且还没文件。求好心人发资源啊!

点评

做地图的工具资源在版块置顶,纹理资源可以去香蕉网下载  详情 回复 发表于 2012-6-9 13:38
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

 楼主| 发表于 2012-6-9 13:38:11 | 显示全部楼层
gaidin.bi 发表于 2012-6-9 11:52
地图纹理都不会用,而且还没文件。求好心人发资源啊!

做地图的工具资源在版块置顶,纹理资源可以去香蕉网下载
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

 楼主| 发表于 2012-6-9 13:39:43 | 显示全部楼层
fantasist 发表于 2012-6-9 01:09
捧个场。一直没学会做地图

我做了这么几年地图,翻阅资料,在国内算是没看见过有人剖析过map文件的代码
今日一看,豁然开朗
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

发表于 2012-6-9 13:43:08 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复 鲜花 鸡蛋

使用道具 举报

该用户从未签到

发表于 2012-6-9 17:46:22 | 显示全部楼层
LZ,有modchina的红盒软件吗?

点评

QQ传给你吧  详情 回复 发表于 2012-6-9 20:30
回复 鲜花 鸡蛋

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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