ProcedualGeneration
文章平均质量分 87
拳四郎
拳四郎
展开
-
Minecraft源码分析(2) - Block,Section和Chunk
Blockblock是Minecraft中最基本的组成元素,也就是常说的“块”。其类图如下简单说明一下Block基类:pos:块的位置lightOpacity:透光系数lightValue:当前块的光照值blockHardness:块的坚硬度,和挖掘次数有关slipperriness:摩擦系数stepSound:踩在Block上的脚步声函数主要是一些Get/Set方法,还有一些回掉函数。有了Blo原创 2016-05-03 23:27:28 · 11200 阅读 · 1 评论 -
Minecraft源码分析(6) - forge环境配置
OS Windows10 64bit1.Java 最好在1.8以上,这里用的jdk-8u71-windows-x64.exe,下载好之后直接双击安装,安装好之后命令行运行java -version2.gradle从官方网站获取最新的zip包 http://www.gradle.org/ 2.将其解压并配置环境变量指向gralde目录 如 %GRADLE_HOME%=E:\yourparh\grad原创 2016-09-29 22:20:40 · 7673 阅读 · 3 评论 -
Minecraft源码分析(5) - 饱食度
介绍介绍饥饿(Hunger)是一个在冒险元素更新中新增的一个游戏机制。在更新之前,玩家食用食物会直接回复生命值。现在,食用则会回复饥饿值,一种随着玩家的不同行动而降低的数值。饥饿条位于屏幕下方玩家的生命值的旁边,表示为10个火腿。当玩家在疾跑时,玩家的饥饿值将会下降的很快。当饥饿值变成6或者更少时,玩家便不能奔跑了。在和平模式下,饥饿值并不会减少,但是其对于玩家生命值的影响并没有消失,并且在游戏中原创 2016-09-29 21:58:03 · 4929 阅读 · 1 评论 -
游戏开发中的程序生成技术
简介PCG是程序生成游戏内容的简称,它使用了随机或者伪随机数的技术,给游戏带来了无限的可能。相比于传统的由设计师将游戏世界中的一草一木都精心配制,PCG的方法是去配置一些生成的规则,然后由生成算法自动去生成游戏世界。在过去的时候,由于游戏主机和PC性能的限制,PCG的内容非常的简单,比如随机地牢或者游戏的地图,但近年来随着sandbox品类的游戏的兴起,比如风靡全球的Minecraft,PCG能够原创 2016-10-09 11:26:51 · 9681 阅读 · 5 评论 -
Minecraft源码分析(1) - 刷怪逻辑
Entity种类生物大致划分为四种:攻击型,被动型,水生型(也就是鱿鱼)和环境型(也就是蝙蝠)。攻击型生物有一个每游戏刻(1/20秒)一次的生成周期。被动型和水生型生物只有每400刻(20秒)一次的生成周期。因为这一点,攻击型生物可以在任何时候生成,而动物生成则非常少。另外,大部分动物在建立世界时产生的区块中生成。源码中对应的类是原创 2016-05-02 01:51:47 · 24872 阅读 · 4 评论 -
CellularAutomation(细胞自动机)
CellularAutomation(细胞自动机)细胞自动机(英语:Cellular automaton),又称格状自动机、元胞自动机,是一种离散模型,在可算性理论、数学及理论生物学都有相关研究。它是由无限个有规律、坚硬的方格组成,每格均处于一种有限状态。整个格网可以是任何有限维的。同时也是离散的。每格于t时的态由 t-1时的一集有限格(这集叫那格的邻域)的态决定。 每一格的“邻居”都是已被固定的原创 2015-07-22 22:33:43 · 12634 阅读 · 1 评论 -
Minecraft源码分析(4) - Item系统
Item简介物品(Item)是只会出现在玩家的物品栏和手上的物体,它们不能在游戏的世界中放置。一些物品在使用时会在游戏的世界中放置方块和实体,它们在物品栏是物品,放置时是方块。一些符合以上特性的物体包括在放置时会变成实体的物品展示框,以及在放置时会变成一组方块的床。物品(和方块)会简短地在HUD上面展示它们的名字。物品使用物品ID,方块使用方块ID。MC中的Item多种多样,各种块,各种家具,各种原创 2016-05-09 23:43:50 · 10094 阅读 · 3 评论 -
CoherentNoise(相干噪声)
Coherent noise定义Coherent noise is a function f (x) , such as any two values f (x0) and f (x1) are close together when x0 and x1 are close together, but donot correlate when x0 and x1 are far apart.lat原创 2016-05-17 00:47:57 · 10221 阅读 · 1 评论 -
Minecraft源码分析(3) - 刷怪笼(MobSpawner)逻辑
Minecraft刷怪笼顾名思义就是刷怪的笼子,遍布Minecraft各地,除了在水中、浮空和末地不存在外,一般来说刷怪笼都存在于低于地平线的位置,但是也有一些刷怪笼生成于高于地面的山中,有时会出现多个刷怪笼密集生成于一片区域的情况,比如蜘蛛刷怪笼。每种刷怪笼只会刷出一种怪,比如骷髅刷怪笼只会刷出骷髅弓箭手。当周围有刷怪笼时,可以听到独特的嘶嘶声,并且如果感觉某种怪物数量骤增,前赴后继地来攻击你,那周围很可能有刷怪笼存在。另外大部分刷怪笼都处于一个特制的房间中,其特点就是地板和墙壁是苔石铺成的,如果在挖掘时原创 2016-05-05 00:44:31 · 16792 阅读 · 1 评论 -
基于分形的山脉河流生成
自相似所谓自相似,是一种尺度变换下的不变性(scale-invariance),即在不同尺度下观察分形可以看到近似相同的形象,若把整个对象的局部放大,再把局部的局部放大,都可以看到相似的结构特征。但是这种自相似并不像整形的相似那么严格,允许相似中的不相似,不需要也不可能完全相同。比如,科赫曲线,整体是闭合的,但任一部分都不是封闭曲线。分形自相似意味着部分与整体有一样的复杂性:一样曲折、琐碎、纷乱、原创 2016-10-07 11:49:56 · 5617 阅读 · 0 评论