Ivan

Administrator

Last active 4 weeks ago

  1. 3 months ago
    Mon Mar 27 14:03:08 2017
    Ivan posted in Is Polycode Dead?.

    I've been on a bit of a hiatus from officially working on the project because I got completely overwhelmed with the scope of the work that had to be done and got busy with some other projects on top of it.

    For the past few months though, I have been thinking a lot about how to reduce the scope and reorganize the project in a way that is manageable and fun for me to work on and prototyping a new, simplified and more streamlined version of the codebase.

    So the answer to your question is no, it's not dead, but most likely I will end up re-starting the project with the codebase that I have been working on privately, one that is heavily based on the current one, but rewritten from scratch to be faster and more usable.

  2. 10 months ago
    Thu Aug 18 01:17:53 2016
    Ivan posted in Polycode Rendering.

    Right now the Scene is nothing more than a holder for the root entity and some utility functions here and there, so it's making more and more sense for me to just get rid of it in favor of just you manually rendering an entity recursively with a camera. This way you dont even need to think of your draw passes as scenes, just setup the projection you want in the camera and render your own root entity with it into a draw buffer.

  3. Mon Aug 15 17:11:16 2016
    Ivan posted in Polycode Rendering.

    You have to explicitly set a scene to clear the screen (most of the time, you don't want to do that for scenes that are overlayed on top). Actually, Scenes are going away as well, so you'll have to set that in the draw buffer.

  4. Mon Aug 8 11:05:21 2016
    Ivan posted in Polycode Rendering.

    Yeah, I should probably change this to a shared pointer just to make it clearer that it does in fact get cleaned up.

  5. Sun Aug 7 19:28:19 2016
    Ivan posted in Polycode Rendering.

    This gives you a lot more flexibility in how you structure your program flow. Just a heads up, I am generally moving more and more towards more explicit programming. Creating a cleaner and more modular API by sacrificing certain implicit simplicity in some places.

  6. Mon Aug 1 20:57:58 2016
    Ivan posted in Animations not playing.

    Skeletal animations are now GPU-only in goodbye_cmake. You'll need a vertex shader that takes bone matrices( Look at GPUSkinning.vert). There is one material right now that you can use out of the box: DefaultShaderAnimated. It's just a simple textured material. I am planning on adding animated versions of all standard materials. Or someone else can do that too if they feel like contributing a thing ;)

  7. Sat Jul 30 22:51:55 2016

    That would be a great feature and pretty easy to add! Feel up for it? :)

    If you do add anything, I advise you do it on the goodbye_cmake branch. It's moved pretty far from master and is due to become the new master soon.

  8. Fri Jul 29 18:53:39 2016
    Ivan posted in VR headset support.

    @zeebok I just commited the VR stuff to goodbye_cmake if you want to take a look.

    The code below illustrates how to use it:

    PolycodeTemplateApp::PolycodeTemplateApp(PolycodeView *view) {
    	core = new POLYCODE_CORE(view, 1280 , 720, false, false, 0, 0, 180, 0, false);
    
    	core->addFileSource("archive", "default.pak");
    	ResourcePool *globalPool = core->getResourceManager()->getGlobalPool();
    	globalPool->loadResourcesFromFolder("default", true);
    
    	scene = new Scene(core, Scene::SCENE_3D);
    	scene->useClearColor = true;
    
    	vr.initVR(core, scene);
    }
    
    void PolycodeTemplateApp::handleEvent(Event *event) {
    	InputEvent *inputEvent = (InputEvent*)event;
    }
    
    PolycodeTemplateApp::~PolycodeTemplateApp() {
    	vr.shutdownVR();
    }
    
    bool PolycodeTemplateApp::Update() {
    	bool retVal =  core->Update();
    
    	vr.Update();
    	vr.Render();
    
    	RenderFrame *frame = new RenderFrame(core->getViewport());
    	scene->Render(frame, NULL, NULL, NULL, false);
    	core->getRenderer()->submitRenderFrame(frame);
    
    	return retVal;
    }

    vr.Render will render it into the compositor render buffers and the render in the main update loop renders it to the screen so you can debug.

  9. 11 months ago
    Thu Jul 21 12:57:35 2016

    What is not working exactly?

  10. Sat Jul 16 16:36:38 2016

    It's just a really low quality bloom shader. You can take a look at the glsl file in the repo if you want to see. The gaussian blur kernel is very small. goodbye_cmake has a higher quality one in by default.

View more