David Vierra
8c98350426
Print repr of GL_VENDOR and GL_RENDERER for drivers that return non-ascii strings.
2015-07-23 14:52:34 -10:00
David Vierra
b05b923466
Embedded profiler now records only samples over the past 10 seconds.
...
Makes live profiling more responsive.
2015-07-20 19:43:00 -10:00
David Vierra
3b6d6d6b39
Some work on a numpy-based raycast method. Not yet used.
2015-07-20 19:42:31 -10:00
David Vierra
115ee5b9fb
CONTRIBUTING.md: Link to wiki page on mcedit2 repo.
2015-07-20 16:46:26 -10:00
David Vierra
8fadb2bb76
Change BindTextureRenderNode to make fewer GL calls when the texture scale is None.
2015-07-19 03:11:02 -10:00
David Vierra
5125fdf86e
Document createRenderNode, updateRenderNode, and updateChildren to make intentions more clear.
...
Change updateChildren to be non-recursive.
updateRenderNode now descends into children and calls updateChildren as needed.
The rendergraph is now slightly less creepy.
2015-07-19 03:06:18 -10:00
David Vierra
f66e2a8dbf
Stop rendering rainbow creepers for unknown entities.
2015-07-19 02:12:15 -10:00
David Vierra
544214ecea
Skip blank itemframes.
...
This may be done improperly. Accessing ref.Item may create an empty compound, and I haven't checked if blank frames have an empty compound for Item or not.
2015-07-19 02:10:49 -10:00
David Vierra
5b963e6222
Add Chest and Large Chest models
2015-07-19 02:10:48 -10:00
David Vierra
f32c8b13bc
Add ScaleRenderNode
2015-07-19 02:08:05 -10:00
David Vierra
63737e8ae3
Remove wonky block model for chests
2015-07-19 02:07:55 -10:00
David Vierra
bfae698646
Fix configured block models not being used.
2015-07-18 13:44:27 -10:00
David Vierra
48dd2b25a5
Add armor stand model (with extra arms!)
...
That's why they call it an arm-or stand.
2015-07-18 12:53:30 -10:00
David Vierra
4db059fde9
Change docs to alabaster theme, skip Qt staticMetaObjects
...
Add github user/repo for theme purposes
More mceditlib->mcedit2
2015-07-17 04:10:57 -10:00
David Vierra
5b25e95cab
Change NBTAttrs a bit so sphinx documents them quietly
...
Both of these changes make them more like the builtin property()
NBTAttr access on classes returns self, so sphinx can document the class
NBTAttr constructors take a docstring argument and replace the instance's doc so sphinx doesn't repeat NBTAttr's doc everywhere
2015-07-17 04:10:07 -10:00
David Vierra
c7a19c4a4a
Add getActualBlockState rules for doors and redstone
2015-07-17 01:59:44 -10:00
David Vierra
697fa78fca
Add target to doc/Makefile for running sphinx-apidoc
...
Replace 'mceditlib' with 'mcedit2' in doc info
2015-07-17 01:59:00 -10:00
David Vierra
1649dcf28b
Allow blockStatesByResourcePathVariant to have multiple entries for a path,variant pair as intended
2015-07-17 01:57:55 -10:00
David Vierra
cd2d6b7ea9
Add a special case to preserve the color of stained glass when rendering
2015-07-16 14:53:50 -10:00
David Vierra
6203847d77
Fix all issues related to improperly rotated, lit, and culled models that use variant rotation
...
Buttons, levers, quartz pillars and others are now oriented, lit, and culled correctly
2015-07-16 02:00:57 -10:00
David Vierra
e018234e6e
Removed variantZrot, which never appears in the variant files.
...
I feel dumb.
2015-07-16 02:00:03 -10:00
David Vierra
559555ca56
Set default blockstate of unknowns to ''
2015-07-16 01:26:04 -10:00
David Vierra
09879c1af5
Fix zero-length arrays appearing in setBlocks
2015-07-16 01:25:40 -10:00
David Vierra
c827444e0f
time_getsetblocks is working again and produces fairer results
2015-07-16 01:25:18 -10:00
David Vierra
12f93e8c62
Add getActualBlockState
rules for fences and panes/bars.
...
This method is done with Python and is very slow.
2015-07-15 21:32:34 -10:00
David Vierra
47ee219528
blockmodels.pyx: cookedModelsByBlockState keys are now split into components
...
Splitting the blockState into properties and sorting them makes property order no longer matter.
Also, all models are added into cookedModelsByBlockState and not just those for hidden states. Soon, I should be able to remove resourcePath and resourceVariant from the base block data dump and only keep them in the states dump.
blockStatesByResourcePathVariant value elements are also split into internalName and blockState
2015-07-15 21:31:56 -10:00
David Vierra
e5982651c1
Update raw data dump: Remove unused material* fields, add materialName field, remove duplicate renderType field
2015-07-15 21:27:36 -10:00
David Vierra
9ce23e8d7b
Don't duplicate code from blocktypes and also don't get it completely wrong
2015-07-15 18:01:46 -10:00
David Vierra
5037655787
Hidden block states are stashed in cookedModelsByBlockState
...
getActualBlockState rule written for grass with snow on top.
2015-07-15 17:38:45 -10:00
David Vierra
4263b184fa
Load "hidden" blockstates from a json file.
...
These new models are cooked and then thrown away as there is nowhere to put them! :(
2015-07-15 17:33:39 -10:00
David Vierra
e65817bb60
Store uncooked models with model variants separate from blockstates
...
Uncooked models are stored in quadsByResourcePathVariant {(path, variant): quads}
blockState mapping is stored in blockStatesByResourcePathVariant {(path, variant): [nameAndState]}
This allows us to skip cooking models twice when one model (path, variant) is used for more than one blockState
2015-07-15 14:57:22 -10:00
David Vierra
79963a55a9
Create dataDir on Mac and Linux
2015-07-15 13:25:52 -10:00
David Vierra
68cfbc4c98
Add special cases for face culling for Slabs and other blocks
...
Also includes leaves with fancyGraphics=True, which is just asserted to be True for now...
2015-07-15 12:34:51 -10:00
David Vierra
7443e6ad74
Remove unused layers from AllLayers
...
SceneUpdateTask doesn't know if a layer isn't provided by any chunk meshes...
2015-07-15 12:33:48 -10:00
David Vierra
7c05881a8e
Incredibly brutal fix for blocks (e.g. slabs, stairs) with useNeighborBrightness
...
What this flag does is make the block report its brightest neighbor's light as its own for rendering purposes, since these blocks are technically opaque but still expose that face of their neighbors.
Next, fix up face culling
2015-07-15 12:33:12 -10:00
David Vierra
79354dd690
Add /setblock and /testforblock commands
...
Refactor some parts of SummonCommand into functions
Someday I'll want a parse language or something...
2015-07-14 20:28:57 -10:00
David Vierra
03175326bd
Rearrange color hash functions, add comments
2015-07-14 19:26:30 -10:00
David Vierra
f5ddfa7117
Add color coding to command blocks, split locations from colors
2015-07-14 13:38:04 -10:00
David Vierra
379ffea897
Add LineWidthNode
2015-07-14 12:28:11 -10:00
David Vierra
628c2a808c
Start work on a command parser
2015-07-13 21:05:58 -10:00
David Vierra
d03d8c9912
Add command block tile inspector
2015-07-13 21:03:56 -10:00
David Vierra
6aca9d8457
Add Command block entity ref
2015-07-13 21:03:43 -10:00
David Vierra
dce11f83a3
registerBlockInspectorWidget expects a tileEntityID attribute instead of an ID argument
2015-07-13 21:03:13 -10:00
David Vierra
912f1058a8
Add demjson.py with modifications for compact command block output
2015-07-13 21:01:13 -10:00
David Vierra
1cae9b60bb
Add Villager entity model
2015-07-13 16:34:02 -10:00
David Vierra
ee730eda2e
BindTextureRenderNode is allowed to have texture == None
2015-07-13 16:33:37 -10:00
David Vierra
cb90fcbd26
Set default value for PCPaintingEntityRefBase.Facing
2015-07-13 16:33:21 -10:00
David Vierra
ef7b3d467a
Raise ValueError in NBTAttr for missing default value
2015-07-13 16:33:04 -10:00
David Vierra
9d2eb9a821
Refactor: Move tile entity inspector widgets under widgets.inspector.tileentity
2015-07-13 16:32:47 -10:00
David Vierra
77665d26ce
Sheep now have wool. Not colored yet.
2015-07-12 22:34:23 -10:00