Commit Graph

279 Commits (f532ee4fe659cc90c313b2fecf84d1606fa254fc)

Author SHA1 Message Date
Nicole Collings 2b753121d7 Voronoi disagram - based biomes. 2019-11-13 20:42:25 -08:00
Nicole Collings 737a7da74f Make Dropped Items zoop into player when theyr're close enough.
* Set loadfile to nil
2019-11-12 01:15:06 -08:00
Nicole Collings 5831977790 Support text and inventory component types in GameGui. Clean up parsing.
* GameGUI Support resizing.
* Bind player.close_menu function.
* Remove cShowMenu and cHideMenu
2019-11-04 20:26:50 -08:00
Nicole Collings ae286f84eb New inventory format and inventory parsing algorithm in GameGui. 2019-11-04 00:43:12 -08:00
Nicole Collings 7cbbd6fed2 Merge remote-tracking branch 'origin/master'
# Conflicts:
#	src/game/Client.cpp
2019-11-02 16:46:52 -07:00
Nicole Collings 352caaa268 Fix compilation on Linux 2019-11-02 16:27:13 -07:00
Nicole Collings d50357badb Re-enable --mode=local command line argument with LocalServerInstance 2019-10-31 14:07:53 -07:00
Jordan Snelling 6c06d0ba8d Fix Windows x64 builds 2019-10-31 01:14:17 +00:00
Nicole Collings c6418540b3 Lua Vector Library in base
* math.round function
2019-10-30 15:46:40 -07:00
Nicole Collings 30221bd611 Right align Item Counts 2019-10-30 14:20:53 -07:00
Nicole Collings 0dc932acdf InventoryList, ItemStack, GUIInventoryList shows InventoryList contents. 2019-10-29 23:41:25 -07:00
Nicole Collings d134eb089f Optimize GUIText setText method. Reserve and don't temp construct. 2019-10-29 20:36:46 -07:00
Nicole Collings ba3770aa21 Clean up Player Class some more, Fix Wireframe, new PointedThing class.
* Refactor PointedThing class to be cleaner and support pointing at nil.
* Convert Dir into an enum class
2019-10-29 20:06:55 -07:00
Nicole Collings 8272aac9c1 GUIInventoryItems and GUIInventoryLists 2019-10-29 19:21:50 -07:00
Nicole Collings 2537b629ec Optimize the hell out of Player::findSelectedBlock 2019-10-29 00:50:19 -07:00
Nicole Collings 2fd5d7d140 Abstract Player collision logic into Collidable class.
* Optimize movement code and clean up Player logic.
* Fix zeus:default:dropped_item display_object
2019-10-29 00:31:00 -07:00
Nicole Collings c48f0a4427 Player set_selected_block property.
* Tweak grass sway perlin noise.
2019-10-27 19:37:11 -07:00
Nicole Collings 2a99b7c6c9 Give Player control over GameGui, unlock mouse when in menu. 2019-10-24 20:16:39 -07:00
Nicole Collings eaf379faa8 LuaPlayer Usertype & Bindings 2019-10-23 23:34:30 -07:00
Nicole Collings 098e5ff86d Make PlayerEntities use the Player model. 2019-10-19 14:03:07 -07:00
Nicole Collings be60f1ed4d Lua Keypress Events! 2019-10-15 00:40:16 -07:00
Nicole Collings 7ce536aea9 Broken bone based animation 2019-10-13 22:40:50 -07:00
Nicole Collings 6d5fbcb5c4 Run LuaEntity update func, Optimize remove_entity, core.__builtin table.
- Fix a bug that was causing the server to infinitely freeze up.
2019-10-11 15:13:46 -07:00
Nicole Collings c576e0c58f Move Lua Entities to Dimension, add remove_entity command. 2019-10-11 01:10:18 -07:00
Nicole Collings e2e4e3010b Resolve a bunch of CLion warnings. 2019-10-10 23:36:45 -07:00
Nicole Collings 659c63388a Local Blitz3D Models from mod /models/ directories, send over network.
- LuaEntities can now use .b3d models.
- GameObject (Block & CraftItem) models are now cached.
2019-10-10 19:55:49 -07:00
Nicole Collings 003c46ca9a Add new player model, tweak MeshGenStream variables. 2019-10-09 13:46:53 -07:00
Nicole Collings e57f99b9c4 Register Entity & Add Entity API Functions.
- LuaEntity Usertype
- Entities with dynamic models
- Lua functionality for setting ItemDef models (Blocks and Items)
- Move interp functions to int_, make set_ immediate.
- Tweak SSAO Shader
2019-10-05 00:53:37 -07:00
Nicole Collings 55595c6ecf Item Models 2019-10-02 16:26:48 -07:00
Nicole Collings 60e2d9ea4e DebugGui Shows items. 2019-10-02 00:16:49 -07:00
Nicole Collings b0d9676f99 Commit Shelved Changes related to previous commit. 2019-10-01 16:36:42 -07:00
Nicole Collings 7d57b7d487 Seperate Dimension into ClientDimension and ServerDimension
- Experiment with lowdef rendering
- BlockModel::createCube function
- Tweak the number of threads the helper processes get
- Fix DebugGui Mesh Updates
- Optimize BlockChunk class
- Moved Mesh Generation code to LocalDimension
2019-10-01 16:33:04 -07:00
Nicole Collings 0d1cdfb724 Move Rendering the world to Dimension 2019-09-29 23:17:34 -07:00
Nicole Collings 2ad700b63d Dimension class work 2019-09-29 22:17:05 -07:00
Nicole Collings 3946d50f73 Temp 2019-09-29 22:13:15 -07:00
Nicole Collings 009d2f38ee Clear the gBuffer properly! 2019-09-28 16:55:32 -07:00
Nicole Collings 2bea0a34c6 Clean up Renderer class. 2019-09-25 23:30:42 -07:00
Nicole Collings 4c00f88963 Abstract SSAO Logic into *Shader classes 2019-09-24 23:39:12 -07:00
Nicole Collings 894cd18e8b Make set(int loc, ...) functions on the Shader. 2019-09-24 16:48:08 -07:00
Nicole Collings 40c46d8316 Visible (buggy) SSAO 2019-09-13 16:15:46 -07:00
Nicole Collings b12a3dc5a1 Function SSAO 2019-09-13 14:24:54 -07:00
Nicole Collings e0d5e22155 Use sol::environment to create locally scoped variables. 2019-09-09 16:40:19 -07:00
Nicole Collings 6ee9a3cb3c Reimplement swaying leaves & grass with version 3.30 shaders.
* Move SOL_ALL_SAFETIES_ON to CMake target_compile_definitions.
2019-09-08 12:33:33 -07:00
Nicole Collings c7a8fea587 Change Lua global namespace to "zepha" 2019-09-08 11:26:53 -07:00
Nicole Collings fc325c4c2f Try to statically compile GLEW 2019-09-04 14:21:38 -07:00
Nicole Collings 59044b8f66 Not-working userdata customization point think 2019-08-31 23:58:38 -07:00
Nicole Collings 27c17af114 Make Entity class use Model instead of Mesh 2019-08-30 17:45:22 -07:00
Nicole Collings 7b77c4b07b Armature based bone animations and Assimp importer 2019-08-26 22:21:21 -07:00
Nicole Collings 7b9c2ab563 Replace ALL include guards with #pragma once 2019-08-24 17:39:35 -07:00
Nicole Collings 43cb70da4f Seperate Chunk, Entity, and GUI mesh related structures 2019-08-24 17:29:31 -07:00
Nicole Collings 1bc66e4d60 Fix multiplayer crash on server 2019-08-14 01:54:51 -07:00
Nicole Collings 3002cfd9aa New font, fix font kerning, implement blend color & font color. 2019-08-13 20:30:46 -07:00
Nicole Collings a92676fa67 Add the name property to ItemDef 2019-08-13 02:08:08 -07:00
Nicole Collings 05fae1f52c Cull some redundant files left behind from the last commit. 2019-08-13 01:52:45 -07:00
Nicole Collings 9113e6c4af Generify most definition classes, add preliminary item support. Pre-cull 2019-08-13 01:38:57 -07:00
Nicole Collings cead4e705d Tweak some more Mapgen, add temp "water" block. 2019-08-10 14:21:13 -07:00
Nicole Collings e82ae10259 Improve MapGen 2019-08-08 00:29:12 -07:00
Nicole Collings f572fa8167 Refactor mod texture loading & mod directories, load textures over net. 2019-08-06 19:17:54 -07:00
Nicole Collings 2420706da6 Send mods over network. 2019-08-04 02:07:14 -07:00
Nicole Collings e637622aa8 Sandbox Lua files into ram, namespace them, parse conf.json, show_menu
* Lua show_menu function to show inventories. WIP
* Copy all lua mods & their files into a series of structs,
  stored in LuaMod, LuaModFile, and LuaModConfig classes.
* Sandbox SandboxedDoFile further by making it only open LuaModFiles
* Recursive mod searching which identifies conf.json as a mod root
* Read conf.json for name, description, version, and dependencies
* Organize mods to load in order of their dependencies
2019-08-03 18:18:05 -07:00
Nicole Collings d0ae343543 Update the inventory - fix the size of inventory boxes. 2019-08-01 02:19:57 -07:00
Nicole Collings 8c2c842373 Inventory Test - New Art assets & Game Scene GUI
* New tool textures
* Net material textures
2019-07-31 22:42:07 -07:00
Nicole Collings 9885744c94 Finish moving existing GUI elements to new system 2019-07-28 02:07:36 -07:00
Nicole Collings ec4d198229 Menus Part 1 - Refactored TextEntity class to GUIText class.
- Move MenuScene and ConnectScene elements to new GUI Components
2019-07-27 23:51:29 -07:00
Nicole Collings 4db2351408 Menus Part 1 - Refactored TextureRect class to GUIRect class.
- Made mouse not lock immediately upon game opening.
2019-07-27 13:19:23 -07:00
Nicole Collings 758054fa17 Finish final 3 Codacy bugfixes. 2019-07-24 18:00:28 -07:00
Nicole Collings 13a42d55d0 Add helper function do display IP addresses in string form. 2019-07-24 12:33:26 -07:00
Nicole Collings 9dd2764aa0 Optimize MeshGenStream's logic 2019-07-24 00:55:18 -07:00
Nicole Collings 7bdb99b51e Codacy "Code Style" bugfixes. 2019-07-23 23:25:38 -07:00
Nicole Collings 427fef04c9 Codacy "Security" bugfixes. 2019-07-23 22:25:13 -07:00
Nicole Collings 50dae1a828 Codacy "Performance" bugfixes. 2019-07-23 22:13:56 -07:00
Nicole Collings e8dae4c526 Codacy "Error Prone" bugfixes. 2019-07-23 22:09:13 -07:00
Nicole Collings eb66677a0b More Codacy bugfixes. 2019-07-23 20:31:39 -07:00
Nicole Collings 7b821d7b4a Hopefully fix a long standing memory leak with MeshGenStream 2019-07-23 20:02:37 -07:00
Nicole Collings b94be32a1b Fix some Codacy style errors. 2019-07-23 00:53:49 -07:00
Nicole Collings c391df1942 Test commit II - Discord web hook 2019-07-22 15:08:53 -07:00
Nicole Collings 28a66cc55c Test commit - Discord web hook 2019-07-22 15:04:55 -07:00
Nicole Collings 4d912949d4 Resolve some warnings pointed out by Codacy 2019-07-22 14:56:19 -07:00
Nicole Collings bfdf58cfac Fixed the block jumbling bug!
- Cleaned up BlockDef, made it more struct-like, removed getters.
- Stopped displaying TextureAtlas in DebugGUI
2019-07-22 14:53:34 -07:00
Nicole Collings 5fcbc5e75e Fix memory corruption in ConnectScene 2019-07-22 14:14:25 -07:00
Nicole Collings 1eeacfb102 Send IndexIdentifier information over the network.
- Improve scene manager
- Fix title screen
- Add ConnectScene scene
2019-07-22 01:22:40 -07:00
Nicole Collings 252c490aa2 Redo CMakeList to add more organization 2019-07-19 13:16:55 -07:00
Nicole Collings 98ab5ea664 Refactor build files and libraries.
- Standardize CMake include file structure
- Build GLFW in CMake configuration
- Include libs folder in repository (with licenses!)
- Update all #include statements that were broken
2019-07-17 22:42:42 -07:00
aurailus a5dc8ae45f Overhaul of many classes to convert constructors to init lists + more 2019-07-11 23:50:24 -07:00
aurailus 320c0cec0f Make PacketType an enum class 2019-07-07 20:36:55 -07:00
aurailus 76173d06d1 Revise Server Client Handling
Fix Transparency in Mushroom Textures
2019-07-03 13:24:19 -07:00
aurailus 0f1db62bcb Add Mesh Mods and Offset_X/Y/Z mods. 2019-06-27 16:59:16 -07:00
aurailus d25299b9ba Remove redundant SelectionBox::Face class. 2019-06-21 14:29:13 -07:00
aurailus dcb5a75e6f Rename SWAY_GROUNDED to SWAY_ATTACHED. +
Base it off of all points, not just ground.
2019-06-21 14:18:33 -07:00
aurailus 90bacd330d Implement grass waving effects.
- Renderer wind texture.
- New draw types, SWAY_GROUNDED and SWAY_FULL_BLOCK
2019-06-20 22:59:00 -07:00
aurailus 1fa8b4f4ec ShaderMod code in vertex shaders
Compressed normal into float.
2019-06-19 22:38:29 -07:00
aurailus 262906c3a7 ShaderMod code in vertex shaders
Compressed normal into float.
2019-06-18 23:49:06 -07:00
aurailus 153a7571ab Seperate Deferred World shader from Entity shader. 2019-06-18 19:48:32 -07:00
aurailus d16b34f2d5 Fixed memory leak with WireframeEntity (FINALLY) 2019-06-18 00:15:24 -07:00
aurailus 3fcb939a9a Fix ParticleEntity and PlayerEntity missing normals. 2019-06-17 13:41:52 -07:00
aurailus d500fe65c4 Deferred rendering engine 2019-06-17 00:17:24 -07:00
aurailus 6b99bbd9a0 FBO is being written to and read from 2019-06-16 23:54:28 -07:00
aurailus bfd016dfd7 Remove pointers from Renderer, move uniforms to classes. 2019-06-16 19:16:29 -07:00
aurailus 225862bdd1 Clean up & Optimize MeshGenerator class 2019-06-16 18:35:40 -07:00
aurailus 5ffd3c6dbb Fixed blocks not propagating into 'empty' chunks, fixed empty tracking. 2019-06-16 00:08:54 -07:00
aurailus 09762ebbee zeus.delay and zeus.get_block API functions. 2019-06-15 23:04:10 -07:00
aurailus 41e4883216 Add zeus.set_block & zeus.remove_block to the Lua API. 2019-06-12 18:06:51 -07:00
aurailus 2042ca1b45 New Log namespace for colored debug output.
* Converted all output to use the new log namespace.
* Fixed a bug with path.
2019-06-12 14:45:08 -07:00
aurailus b590e57b4e Client and Server both run Lua code under separate APIs + sandboxing.
* Seperate Lua API into a Client API and a Server API
* LuaApi split into 2 files and named ClientLuaParser & ServerLuaParser
* ModuleServerRegisterBlock modified to work with ServerDefs
* Lua Parsers now find mods in the mod root directory
* Path class to sandbox included lua files
* Move util.lua code into ModuleClientUtils / ModuleServerUtils
* MapGen uses block names instead of hard-coded IDs
* Moved header-only-libs implementations into Main.cpp
* Two test mods with only main.lua to test mod loading
2019-06-12 00:15:47 -07:00
aurailus eb66f9d3e6 Create a new series of classes to store block definitions on the server.
* Added ServerBlockAtlas class
* Added ServerBlockDef class
* Added ServerBlockModel class
* Added ServerMeshPart class
* Added ServerDefs class
2019-06-10 23:53:24 -07:00
aurailus 6a66282eea Add some padding to the UVs to mitigate "white line" visual glitches 2019-06-10 22:15:05 -07:00
aurailus 2a35ff808e Small change to function name 2019-06-04 17:00:29 -07:00
aurailus f35e825083 Multiplayer Block Update Synchronization 2019-06-04 00:05:52 -07:00
aurailus 00f9dff173 Finish Particles, Fix some TODOs
* Update Main
2019-05-27 23:01:22 -07:00
aurailus be62a302c9 Particles + Optimization
* Added Particles.
* Used Valgrind to identify and remove a few memory leaks.
2019-05-16 16:29:46 -07:00
aurailus cfc6430aa5 Rewrote Meshes to use a Vertex struct instead of float primitives. 2019-05-15 23:01:09 -07:00
aurailus 2e07d9b50d Placing Blocks!
* Lower terrain sampling density
* Player "model"s
* Fix updateRightMouse function on InputManager
2019-05-15 20:35:26 -07:00
aurailus 98a85c76df New Block Damaging Functionality, Chunk size = 16
* Re-enable Atlas Tex
* Rename BlockModelEntity to BlockCrackEntity
* Disable Player Crosshair
* Fix isMousePressed function in InputManager
* Clean LocalWorld update function
* Moved block break code from player to LocalWorld
* Reduced Chunk Size back to 16
2019-05-14 12:05:54 -07:00
aurailus bd777c2e08 Finished Texture Atlas deletion.
* Increase Texture Atlas size
* Improve Terrain Generation
* Block Break persistence
* Increase Chunk render distance
2019-05-01 19:57:50 -07:00
aurailus 06e16eeab5 Dynamic Atlas deletes unused Textures. 2019-05-01 15:33:32 -07:00
aurailus 20a9eaa298 Generate crack textures dynamically on the texture atlas,
Note: Atlas does not discard unused textures yet.
2019-05-01 14:49:39 -07:00
aurailus 84cff00a3c Update texture atlas to support creating crack textures.
* Add Halfslab models
* Add grass slab block
2019-04-30 00:39:33 -07:00
aurailus 9565851b09 TextEntity line height tweak 2019-04-29 15:11:54 -07:00
aurailus 17d92f0f9e Remove every single pointer from DebugGui 2019-04-29 14:54:22 -07:00
aurailus 7a036cfee9 Refactor DebugGui, modify HUD classes
* Add StatGraph class to encapsulate common graph things
* Merge TextBuilder with TextEntity
* Add Util class for the float / vec to string conversions
2019-04-29 00:58:01 -07:00
aurailus fa82be9c59 New Dimension code which deletes mesh & block chunks far away [!BUG]
* Important note: There is a ram leak in this code somewhere, and probably other bugs, writing code at midnight is a bad idea.
2019-04-23 00:07:17 -07:00
aurailus 46f455939c Pre-large-scale-cleanup 2019-04-22 17:06:32 -07:00
aurailus d119cee07f Remove all Magic Numbers relating to Chunk Size, change size to 32^3 2019-04-22 01:04:43 -07:00
aurailus a853cfbdbf Load util.lua in LuaApi.cpp instead of default
Finish some misc TODOs
2019-04-21 18:02:31 -07:00
aurailus 91e3cc81ca Remove most pointers from BlockDef, BlockModel, and BlockAtlas classes. 2019-04-20 15:15:25 -07:00
aurailus c154670f2e Convert Lua functions to Lambdas 2019-04-19 15:33:16 -07:00
aurailus d83e0d5f7e LocalWorld optimization 2019-04-18 20:11:34 -07:00
aurailus 7ac199127d Rename DynamicAtlas to match it's filename (TextureAtlas) 2019-04-18 19:02:36 -07:00
aurailus ebac3106b5 Complete Reorganization of file tree
* Merged ArrayTrans3D with VecUtils
* Add crack textures
2019-04-18 17:03:52 -07:00