Jump to content
  • Advertisement
  • entries
  • comments
  • views

About this blog

The journey to make game development from scratch ubiquitous and effortless on all platformsvoxyc_1029_a.thumb.jpg.62fd0cfdc27aea99269e864ea257c2b0.jpg

Entries in this blog


Shadowmap Artifacts

There is clearly something wrong with the images below. The shadows are not supposed to be this far away from the surfaces they are cast from. Can I correct this with bias or should I fix the scale? The shadows used to look real, but all this floating point multiplication must have got in the way. Two years ago it looked perfect. What happened with this shadowmap? https://github.com/dimitrilozovoy/Voxyc/blob/master/engine/ShadowMap.cpp https://github.com/dimitrilozovoy/Voxyc/blob/master/engine/ShapeRenderer.cpp



House On The Borderland Details

The Engine The engine for this project, tentatively, will be Voxyc. Links to the Android editor app, Github source and existing games are on the Voxyc project page. The editor and the games it produces also run on Windows and iOS (the Visual Studio and Xcode projects are in the /platform folder of the repo). I'm open to other alternatives, but ability to edit on mobile is essential for me. Another way would be writing a mobile editor and a voxel plugin for Godot, or merging Voxyc and Godot. All buildings will be made out of voxel blocks. This allows for easy level creation. I've already blocked out the basic outline of the landscape, the house ruins and the little hamlet (the roofs should be triangular prisms, I know; they will be). You can find main.sc scene with them in the attached project (Voxyc can open this file). As @JoeJpointed out, this will also allow for the swine creatures to break into the house by taking away blocks, which sounds awesome. The characters will be animated models. I used MakeHuman to create some of them already. The first four .dae files are included in the attached project. They are not animated yet. The engine does not yet have skeletal animation, so we may resort to .obj frame animation, like in Fateless. But I'm working on skeletal animation. List of characters: Camper (player for chapter 1), Old Man (player), Tonnison, Sister, Dog, The Swine Man, My Love
Full text of the novel How To Edit And Run The Game Build On Android: Install Voxyc. Download the attached project file. Unzip the folder HouseOnTheBorderland into /Android/data/com.voxyc.voxyc/files To run the game, in Voxyc, click on File->Clear and run script->Picker and select loadch1.lua in the HouseOnTheBorderland folder. To open the main scene in the editor to edit, in Voxyc, click on File->Load Scene->Picker and select main.sc in the HouseOnTheBorderland folder. On Windows: Clone Voxyc source from the Voxyc github repo. In Visual Studio, open /platform/windows/Voxyc/Voxyc.sln. You can run the game with the following command line parameters: -m luaprogram -a <path to extracted HouseOnTheBorderland dir> -m means module and luaprogram is the module that runs lua scripts.
-a sets the main project dir. The Windows port will then automatically launch load.lua there on startup (rename loadch1.lua to load.lua). You can edit the scene by pressing Tab->Load Scene Breakdown of Voxyc C++ features Here is a brief overview of important files for the C++ codebase app/main.cpp - Entry point for desktop
app/VoxycApp.cpp - The engine core app file that runs different modules (game, editor, etc) and has the highest-level load/tick/draw functions
app/LuaProgram.cpp - The module that runs a Lua program; the game is essentially a set of Lua scripts (load.lua, tick.lua, etc)
editor/Editor.cpp - The editor; essentially one big loop with everything; needs splitting up/refactoring
engine/Engine2.cpp - The engine core; main interface into the engine; any client that uses the engine calls this class
engine/ShapeRenderer.cpp - Renders geometric shapes, terrain
engine/ModelRenderer.cpp - Renders models
engine/SpriteRenderer.cpp - Fast sprite/particle system renderer; only works on Android at the moment
engine/Voxels.cpp - The voxel memory storage and converting voxels to mesh are here
engine/TextureAtlas.cpp - Essential for the fast sprite renderer and the batcher; only works on Android
engine/Batcher.cpp - Batcher; combines voxel meshes into one big mesh to reduce draw calls; only works on Android
engine/Billboarder.cpp - Billboarder; pre-draws models as sprites for far-away rendering; does not work yet (but would be nice!)
engine/ShadowMap.cpp - Shadow map for real-time shadows; used to work on Windows and Mac OS, but currently probably broken. Essential for horror, though. Feel free to ask any questions. I figured that you guys would appreciate me finally getting specific and technical instead of whining about Unity. I really hope so and I'm trying to avoid downvotes. In case, if I'm doing something wrong, please let me know as I'm new here.   HouseOnTheBorderland.zip



Looking For People To Help Work On House On The Borderland

Apparently I made some people mad by criticizing Unity. I will not do so anymore. I did not know that Unity was a religion around here. Sorry. For the past 5 years I've been working on a C++ engine. The engine is now done and I've made 3 games with it. I started working on the 4th one, and I want to base it on a classic horror novel. However, this is an ambitious project and I realized I cannot do it all by myself. Unfortunately everything I do is C++ (not Unity). And even more unfortunately, my editor works on Android. It's a real problem that I like to edit on mobile and unfortunately I cannot use Unity because it doesn't have a mobile editor. So what to do here? I got a bunch of C++ code and nobody cares because it's not Unity. Maybe I'm going to have to finish "House On The Borderland" by myself. It will take years, no doubt. I'm afraid of expressing any kind of opinion on here because apparently that's frowned upon. Just looking for some help. I was thinking of posting some tutorials. Like how to get super fast sprites, maybe. But maybe that'll get me criticized too. I'm out of ideas. What is the point of this community? How do you actually get someone to care about something? I can help your projects too. But again, unfortunately, it's all with C++ and Lua and not your beloved Unity.



  • Advertisement

Important Information

By using GameDev.net, you agree to our community Guidelines, Terms of Use, and Privacy Policy.

GameDev.net is your game development community. Create an account for your GameDev Portfolio and participate in the largest developer community in the games industry.

Sign me up!