geekhack Projects > Making Stuff Together!

Project Klack - Keyboard building Simulator

(1/5) > >>

BarfightSpectator:
I'm currently building a Keyboard building Simulator, Keyboard Configurator, Realtime Renderer or whatever one would call such a thing.

Update 01:
The embedded version doesn't do it justice

Update 02:


Download the latest build:
* https://barfightspectator.com/Klack_02.05.21.zip


Previous Versions:
* https://barfightspectator.com/Klack_10.04.21.zip
* https://barfightspectator.com/Klack_08.04.21.zip
* https://barfightspectator.com/Klack_06.04.21.zip
* https://barfightspectator.com/Klack_01.04.21.zip


What's you primary Operating System?
https://strawpoll.com/kejc5cppv

fpazos:
That is very cool. If you use Unity it has compatibility with lots of systems included web, which is compatible with every system.

You should contact vendors to see if they help you with models. Also you can find lots of useful models on thingiverse as keycaps in diferent profiles. An stl is quite easy to convert.

Enviado desde mi Redmi Note 7 mediante Tapatalk

BarfightSpectator:

--- Quote from: fpazos on Sat, 03 April 2021, 04:26:26 ---That is very cool. If you use Unity it has compatibility with lots of systems included web, which is compatible with every system.

You should contact vendors to see if they help you with models. Also you can find lots of useful models on thingiverse as keycaps in diferent profiles. An stl is quite easy to convert.

Enviado desde mi Redmi Note 7 mediante Tapatalk

--- End quote ---

Thanks, except for the wrinkle that I'm using the hd render pipeline and that's not compatible with OpenGLES. So if I want to make a webGL version instead of an offline one I'd have to use an inferior light transport algorithm. Maybe once I'm done with the code bits and get to putting in more models.


Now that I've implemented switching PCBs and putting in stabs I've actually got an important question for _everybody_:
Should I allow only physically possible layouts based on PCB/Plate combo or should I allow all possible layouts?
The first is the kind of hand-holdy thing we're used to from modern games but it also means you can't build a config that won't work. The second gives you more freedom to make mistakes but could also possibly be a learning tool for beginners.. I think. 

I'm really not sure on that one so I'd like as many opinions as possible.

suicidal_orange:
First this looks amazing, I wasn't sure what it was from your previous thread but the video shows it off nicely.

I know next to nothing about rendering but surely if you render a layout that's not supported by the plate it would look bad as there would be gaps between switches where the plate should be?  That doesn't sound good.  If you are trying to make it hand-holdy you would have to add a way to define what cap sizes are available in each keyset as well as what's supported by the PCB and plate though, and that's going to be a lot of work ongoing.

BarfightSpectator:

--- Quote from: suicidal_orange on Mon, 05 April 2021, 14:42:37 ---First this looks amazing, I wasn't sure what it was from your previous thread but the video shows it off nicely.

I know next to nothing about rendering but surely if you render a layout that's not supported by the plate it would look bad as there would be gaps between switches where the plate should be?  That doesn't sound good.  If you are trying to make it hand-holdy you would have to add a way to define what cap sizes are available in each keyset as well as what's supported by the PCB and plate though, and that's going to be a lot of work ongoing.

--- End quote ---

Thanks :) In the meantime I finished the layouts part, only physically possible layouts will be.. well possible :P

As for the time: Yes and no, it did take a lot of work to make it all come together the way it is now but I'm at a place where i can add new boards or parts with very little hassle. Let me tell you, the architecture I wrote for this project might be the best/most beautiful thing I've ever written. Let me break down the basic concept:


What you're looking at here is the Scene Hierarchy in 3DsMax for the XD64, the board I've been using to build my systems. If you have a look on the left hand side you'll see the names of the scene objects and their place in the hierarchy. You'll also notice certain [tags], these are used by my importer to identify what they are and process them accordingly. Thanks to that I have to do almost no additional work in the engine (after building the hierarchy and naming things properly in Max of course).
If you have a look at the board on the right hand side you'll see little green boxes. These are the ones with the [switch] and [stab] tags on the left. These little helpers define where, in the layout, the switches are, what rotation they have, and the profile of the caps that go on top of them.

The switches caps and stabs are reusable pieces separate from the boards. and get placed acoring to the helpers I define in Max. Color Profiles are not in yet but there will be a "few" *caugh*hundret*caugh* presets when everything is done.. AND a painting mode where you can just paint the caps and legends with normed colors. Probably RAL since we mainly use that at work.

There will be a photo mode, the ability to change light situations and background/environment later. So you can also share your builds.

Here's a little sneak preview, don't mind the animations.. they are temporary/work in progress.
As always, check it out on yt for full quality:
Now I just need a few more boards  :cool:

Navigation

[0] Message Index

[#] Next page

Go to full version