Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

1411431 Posts in 69363 Topics- by 58417 Members - Latest Member: gigig987

April 20, 2024, 04:40:12 AM

Need hosting? Check out Digital Ocean
(more details in this thread)
TIGSource ForumsCommunityDevLogsPolycode
Pages: 1 [2] 3 4 ... 9
Print
Author Topic: Polycode  (Read 36576 times)
kamac
Level 10
*****


Notoriously edits his posts


View Profile
« Reply #20 on: December 17, 2012, 11:52:53 AM »

I'd like to know a bit more about technology being used.

a) Do you use both OpenGL and DirectX? What version(s)?
b) Do you support 3D? If yes, can you please provide a snippet on how loading an .obj and displaying it might look like? How about shaders?

Thanks  Evil
Logged

Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #21 on: December 17, 2012, 12:01:46 PM »

I'd like to know a bit more about technology being used.

a) Do you use both OpenGL and DirectX? What version(s)?
b) Do you support 3D? If yes, can you please provide a snippet on how loading an .obj and displaying it might look like? How about shaders?

Thanks  Evil

The Polycode renderer is abstracted and currently implemented via OpenGL on the three supported platforms. Yes, there is 3D support. You might say that 3D is actually the main focus of Polycode as a larger project. I just started with 2D editors to get the UI stuff solid before writing the 3D editor, but the code itself has full support for materials, shaders, post processing effects, skeletal animations, lights, shadows, 3d physics and all sorts of stuff.

There is a custom import tool that's bundled with Polycode that can import meshes from many different formats. So loading an .obj would mean running it through the import tool to convert it to Polycode's .mesh format and then loading it in. Here's the C++ code for what loading and display a mesh would look like:

Code:
	Scene *scene = new Scene();
SceneMesh *mesh = new SceneMesh("myobject.mesh");
scene->addEntity(mesh);

Materials and shaders are defined in a special material file and there is already a visual editor for it in the IDE.
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
kamac
Level 10
*****


Notoriously edits his posts


View Profile
« Reply #22 on: December 17, 2012, 12:38:01 PM »

I'd like to know a bit more about technology being used.

a) Do you use both OpenGL and DirectX? What version(s)?
b) Do you support 3D? If yes, can you please provide a snippet on how loading an .obj and displaying it might look like? How about shaders?

Thanks  Evil

The Polycode renderer is abstracted and currently implemented via OpenGL on the three supported platforms. Yes, there is 3D support. You might say that 3D is actually the main focus of Polycode as a larger project. I just started with 2D editors to get the UI stuff solid before writing the 3D editor, but the code itself has full support for materials, shaders, post processing effects, skeletal animations, lights, shadows, 3d physics and all sorts of stuff.

There is a custom import tool that's bundled with Polycode that can import meshes from many different formats. So loading an .obj would mean running it through the import tool to convert it to Polycode's .mesh format and then loading it in. Here's the C++ code for what loading and display a mesh would look like:

Code:
	Scene *scene = new Scene();
SceneMesh *mesh = new SceneMesh("myobject.mesh");
scene->addEntity(mesh);

Materials and shaders are defined in a special material file and there is already a visual editor for it in the IDE.

Wow! Impressive Smiley
Is polycode available for download? The earlier version perhaps? (if it ever existed, and I think it did?)

Few more questions:

a) Did you write all those format loaders yourself, or used things like lib3ds?
b) Which OpenGL version(s) do you support? (From what range, perhaps?)

That simplicity is looking great!
« Last Edit: December 17, 2012, 12:46:12 PM by kamac » Logged

Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #23 on: December 17, 2012, 12:59:06 PM »

Hey thanks!

It's not available for download right now. The github code, is of course accessible, but under heavy development and things are going to be broken up until release.

Quote
a) Did you write all those format loaders yourself, or used things like lib3ds?

No, I used Assimp: http://assimp.sourceforge.net/

Quote
b) Which OpenGL version(s) do you support? (From what range, perhaps?)

Eh, this is a tricky question. It's implemented kind of adhoc across the platforms, so there is not a definitive minimum version. I believe it uses at least one 2.0 extension, but it's in the shader code and is not required if you don't use shaders.
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
kamac
Level 10
*****


Notoriously edits his posts


View Profile
« Reply #24 on: December 17, 2012, 01:00:53 PM »

Hey thanks!

It's not available for download right now. The github code, is of course accessible, but under heavy development and things are going to be broken up until release.

Quote
a) Did you write all those format loaders yourself, or used things like lib3ds?

No, I used Assimp: http://assimp.sourceforge.net/

Quote
b) Which OpenGL version(s) do you support? (From what range, perhaps?)

Eh, this is a tricky question. It's implemented kind of adhoc across the platforms, so there is not a definitive minimum version. I believe it uses at least one 2.0 extension, but it's in the shader code and is not required if you don't use shaders.

Thanks for those answers Smiley

I hope you are going to release a BETA soon  Durr...?
I'll be waiting.

Evil
Logged

giantrobotbee
Level 0
**


View Profile
« Reply #25 on: December 17, 2012, 01:10:06 PM »

Are there plans to build Polycode so that projects could be built using both in C++ (for "engine" stuff) and in Lua (for "game code" stuff)? I know there's the Polyconsole tool mcc built that sort of lets you do this, but I was wondering if that's in the pipeline for the main project itself.
Logged
Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #26 on: December 17, 2012, 01:15:22 PM »

The Lua stuff is being mainly developed as a standalone thing, though it's quite easy to just load Lua into your project and use the same bindings as the Polycode player to wrap your C++ stuff in.

Another option is to make C++ modules for the Lua IDE and then script it from there.
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
alessandroLino
Level 0
**



View Profile
« Reply #27 on: December 17, 2012, 01:18:02 PM »

Wheres that neat 3d rpg thing with oryx sprites i've seen on the old site? It was so pretty  Cheesy
Logged
Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #28 on: December 17, 2012, 01:21:33 PM »

There's still a thread for it here on tigs:

http://forums.tigsource.com/index.php?topic=9701.0
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #29 on: December 17, 2012, 01:55:47 PM »

Hey ivan, this looks cool. It also reminded me of some software, FUGU, I wrote a while back that has a 3D view and an editor for Lua code. It's for making procedural animated geometry for animations, and some time in the future I want to do it again, but this time for procedural geometry for games. Anyways, if polycode takes off I might look at writing a procedural geometry module for it. GL!

Logged

Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #30 on: December 17, 2012, 02:12:49 PM »

Hey that looks great! Would love to see this implemented in Polycode Smiley
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
eigenbom
Level 10
*****


@eigenbom


View Profile WWW
« Reply #31 on: December 17, 2012, 02:53:03 PM »

Thx, yeah hopefully my project after moonman will involve generative 3D geometry in some way, so probably in 6 months or so I'll be taking a closer look. Smiley
Logged

Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #32 on: December 21, 2012, 12:05:37 PM »



A shot of placing and editing particle systems in the 2d editor.
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
kamac
Level 10
*****


Notoriously edits his posts


View Profile
« Reply #33 on: December 21, 2012, 12:10:07 PM »

Looking good  Wink
How's the performance in general? (By the way, are you simply batching particles in one draw call?)
Logged

Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #34 on: December 21, 2012, 12:19:33 PM »

My old system just instantiated particles as entities (the Polycode base class for all drawable objects), but it was too slow, so I just recently rewrote it to batch the same particle VBOs. At some point I wanna make it so they're all one vertex array and positioning is done on the GPU via a shader, but I'll hold off on that for now.
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #35 on: December 24, 2012, 08:05:05 AM »

Rewrote the font rendering last night to be faster and more importantly correctly manage weird fonts. Before, things got clipped to a texture that wasn't calculated quite correctly, but now things render as they should:

Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
Quarry
Level 10
*****


View Profile
« Reply #36 on: December 24, 2012, 12:46:12 PM »

Is it supposed to be blurry, that worries me
Logged
Ivan
Owl Country
Level 10
*


alright, let's see what we can see


View Profile
« Reply #37 on: December 24, 2012, 03:38:29 PM »

This particular font renders a little fuzzy and you have some options as far as font rendering strength options, but normally things look very good.
Logged

http://polycode.org/ - Free, cross-platform, open-source engine.
kinifi
Level 0
**



View Profile
« Reply #38 on: December 28, 2012, 07:57:42 AM »

Seriously, this has gotten me so excited. I have been looking for something like this. Most of the time I just make platformers and give it mod support so I never have to touch the original engine. I love Unity but my biggest problem with it is wanting something new or needing something fixed and not being able to do anything because they are such a big company now you have to jump through shit to get it done.
Logged
Quarry
Level 10
*****


View Profile
« Reply #39 on: December 28, 2012, 10:39:32 AM »

This is getting crazy! Addicted
Logged
Pages: 1 [2] 3 4 ... 9
Print
Jump to:  

Theme orange-lt created by panic