Go for it!
I’ll be finishing up rigging today for my model and as soon as that’s done I’ll post the .egg file so anyone can use it.
Like PetGerbil said we should keep a common scale. I’d say 1 panda unit = 1 meter, characters from 1.5 to 2.0 meters tall. Apart from diffuse and normal maps there could be gloss maps (can be packed to the alpha channel of normal maps), glow maps if you have something emitting light, height maps can be used for parallax bump mapping or tessellation but I don’t think I’ll be making any height maps. I baked AO into vertex color because I have no shading in my color/diffuse texture and the model looked really flat in pview with no lights.
Go for it!
I’m grateful of any tutorial. So, yes please.!
(especially colliding into walls/objects stuff)
WIP egg(.pz) model:
There are some problem areas that need a fix, I didn’t notice the pockets are not symmetrical and it’s kind of late to do anything about it
Excellent, then! I’ll hopefully make a start in on the tutorial today.
Simple collision is indeed intended to be part of the tutorial!
Agreed, on all counts! 1 unit = 1 metre it is, then.
How much of that does the shader generator support “out of the box”? My current plan, in line with keeping this a simple, beginner’s tutorial, is to simply turn on the shader generator on the root node and leave it at that.
Hmm… I don’t really have experience with parallax mapping or tessellation, so I’ll likely leave those for some other contributor to add, if desired. (I’ll likely post my Blender file for others to use, if I do make this environment model.)
Gloss might be useful, depending on how the shader generator handles it.
I don’t currently intend for the environment to glow, so I’ll leave that be.
Ambient occlusion is tempting… but again, isn’t something that I’m terribly familiar with. I’ll think about that one…
Heh, I’ve done that myself in my current main project.
(Although that makes heavy use of custom shaders.)
Hmm… I have a bit of critique, if I may. If you prefer to not have any, then fair enough–just skip the rest of this message!
Her face currently looks a bit doll-like, to me, even given the art-style. I think that part of it is that her eyes are set very far apart–bringing them a little closer together might improve her a bit.
Speaking of her eyes, when they move their textures seem to become distorted. How are you animating them? If you’re not already doing so, could you perhaps make them solid orbs (or hemispheres), that simply rotate within their sockets? That might remove the warping.
Finally, her hair looks a bit odd–almost like fabric. I think that part of it is that the “strands” don’t look “smooth”, and another part is that it lacks a sense of “depth”–the apparent depth of the “strands” looks a bit too uniform. (It would also be nice to see it move a bit with her animation.)
Conversely, her clothes look really good (that asymmetry that you mentioned aside), as do her eyebrows, to my eye. Those fabric textures really do fit nicely, I think! The C++/Python buttons are a nice touch.
The shader generator knows what to do with gloss, glow, normal and height maps out of the box, so that should not be a problem if you want to use them.
You’re right about the eyes, I’ll try to bring them closer together it shouldn’t break the UVs and the rigging in that area is wrong anyway (it’s the eye texture distortion you noticed, and yes, the eye are hemispheres that should just rotate, but something went wrong).
I think we should make a github repo so it would be easy to share and contribute.
The generator will work with gloss maps stored in a normal-map alpha-channel? Or will it work with a gloss map, but only if it’s stored as a separate texture?
As to the eyes, fair enough!
As to a github repository, I think that it sounds like a good idea! I intended to show my tutorial for community approval and comment anyway, and, as you say, a github repository allows for not only that, but also a (reasonably) convenient means for others to contribute to it.
By the way, what animations do you have in mind for “Panda-chan”?
I think gloss maps can be separate grayscale images, but I always put them in the alpha of normal maps, for that you need to have the texture in the egg file set as rgba and normal_gloss envtype, check the model I’ve posted it has that set.
I want to have idle, walk, run, for sure, maybe turn left/right, side step (strafe), jump, fall over. I’ll also browse all the free mocap I’ve collected and add anything that looks cool or useful (probably some dance, acrobatics, and workout).
First of all, I want to say that I didn’t have time to read the whole topic and apologize if I’m making a point already made or addressed.
I’ve seen threads like this pop up all the way back in 2008-2010 and going nowhere.
My suggestion will be that it is 2019, if you want assets made, let’s raise some money on someone’s Paypal and then comission freelance 3d modelling and animation work on Upwork.com or Fiverr.com. I’ve used them extensively in the last few years and have spent about 8000 USD in total. You can find the right talent for very afforable one-time payments for their work or hourly rates from Eastern Europe or parts of Asia.
I’m familiar with the Upwork milestone system and have good experience finding the right talents based on their reputation scores in the Upwork reputation system so I can help getting the right freelancers and managing the communication between them. Upwork also handles any scamming/fraud/disputes between the client and freelancer, usually in the client’s favor and I’ve worked with their team for solving disputes as well.
If we just want to replace the assets from samples and are fine with the freelancers using public domain media files or modifying them I think we only need a 500USD budget and about a 1 month time for me to get all the freelancer proposals, filter out the good ones and hire one or two to do the work, on a milestone basis and for them to finish the jobs.
Since the messages between the freelancers and me in private I can be the middleman and share their current work, get feedback from you guys and pass it to the freelancers to make the appropriate changes or move on to the next milestone.
I can personally donate 50USD for this job’s budget.
If you guys agree we can get this going. Only need an exact list of assets to be made with general descriptions and the money donated to someone’s Paypal here who will transfer the money to mine after the job has been completed and assets shared here. I can use my own payment method until the job is done for paying the milestones.
From my experience, having non-professional users donating assets instead made during their free time just does’t go anywhere due to lack of skills, time, coordination or combination of these.
This is just my suggestion and proposed solution.
This is my take on samples.
Don’t spend time making great models, generic textures and models are better , the goal is not to demonstrate Panda 3D graphics but how to make a functional game.
A full game tutorial course would be more interesting, anyone could pick up the chapter they need.
For example importing assets, import main scene , creating materials, managing animations , using ECS, setup physics and collisions for scene and assets, code player gameplay, make UI and menu, add game goal and some ai, export the game.
Ah, neat! I’m glad that it is possible to pack gloss into the alpha channel with the shader generator.
I don’t have a lot of varied gloss to add, but I would like to have some control of the “shininess” in my intended environment, so I may well do that, then.
Ah, that sounds pretty good, I think. I was particularly hoping for some form of sideways movement, as I intend for my tutorial to blend between forward- and sideways- animations to allow for 360-degree walking animation.
I see your concern, indeed–but conversely, we already seem to have movement here. Wezu’s model seems to be well underway, for one.
However, if this thread’s model-building efforts do fall through, why not just look for royalty-free models? I imagine that we could find something halfway workable if we look around!
Thinking of which, are we planning on using royalty-free sound effects and music? That’s my current intention for my tutorial, but I’m very much open to arguments from the thread!
Hmm… It’s a thought–but then, I do worry a bit that users might take the visuals of the tutorial games to represent “what Panda can do”. As a result, I’d rather have something that’s at least decent-looking, if not necessarily of “AAA” quality.
Could you elaborate, please?
I’m not sure of what you’re suggesting that isn’t covered by my (work-in-progress) tutorial, or the more-advanced one proposed by wezu, or by the manual.
@Anon based on the Patreon poll - I don’t think there’s enough people willing to invest money in P3D to get a professional to do the models, and even if we do get funding I bet rdb can name at least a dozen better things that the money could be spend on other then fancy models.
@Gandalf most of the things you describe are covered by the manual, some don’t exist (like ECS), some are too broad (‘code player gameplay’). It’s simpler to write a mega tutorial for a engine that’s a game-making-toolset, there’s usually one way to import assets (clicking the right button), there’s a material editor (with more buttons to click), a animation editor, a what-have-you-not editor. Writing a complete tutorial for Panda3D would be like writing a tutorial for Python, you’d end up with a book. I’m not saying that a new book on Panda3D would be bad, but that’s beyond the scope I was aiming for. We need samples that can get people started and also show what Panda can do out-of-the-box. Right now the website shows near photorealistic renders, and the samples shipped show RoamingRalph, neither of these is in my opinion representative of the current state of p3d.
As for progress - I had to fight a bit of snow today and couldn’t do much, but I should be able to finish the model during the weekend.
Best tutorials use simple assets.
Do you mean tutorials playlist like this one ?
Unfortunately Panda 3D new render pipeline has not been worked on since long time.
If we can exceed some initial goals with Patreon (and I have reason to believe the funding amount may significantly exceed the results of the poll), we could discuss setting up some funds to collect money in over time to fund specific projects, or perhaps assigning to bounties.
I like seeing collaboration to get samples going; I would just really caution against trying to target a particularly ostentatious art style. While it would be good to have some samples that pull out all the stops, I would rather that for most samples we pick something functional with an easy-to-achieve stylistic art style that works for the purpose it’s trying to convey. Looking around for indie games, there are many that look visually very impressive but nonetheless use simple rendering techniques, flat shading, etc.
I guess what I’m trying to say is: if a sample tries to go for a highly-detailed, realistic style but doesn’t have the shaders nor the right amount of attention to detail and artistic cohesion to pull it off correctly, it will look worse than if it simply tried to go for an easier-to-achieve style.
I generally think that everyone can create something of their own and put it in code samples. And the community, together with the developers, will decide what to add to the sample demonstrations.
As for models, I think can add polygons and permissions for textures. However, the code of examples needs to be modified, for example, the example of the glow filter does not work as it should, this creates many problems for beginners.
The art-style shown there is simple, but the assets themselves aren’t: look at the detail in the textures, the subtle gradients of colour.
And I think that it’s worth clarifying: I’m not advocating for “AAA”-quality assets, or anything overly complex. I’m just arguing against a very simplistic, or low-quality, art-style. There’s a lot of space between the two.
What I have in mind for my environment model, for example, isn’t all that complicated: three colour-textures (flagstones, stone blocks, and sand); three corresponding normal-maps; and flat gloss-data encoded into the alpha-channels of the normal-maps, so that I can set how “shiny” everything is. The colour-textures and normal-maps would be hand-painted, and fairly straightforward, I intend. That’s it.
Put it this way: I want art that looks better than in the current manual tutorial, or in Roaming Ralph. That needn’t mean “AAA”-quality, but I do want something better than what I think of when I think of “generic”.
And again, I do fear that users will come to a tutorial, see poor-quality art, think that this represents the capabilities of Panda3D, and be turned away. Hence, even artistic preferences aside, I would like to have at least decent-quality assets.
I have no argument with this, I think.
In other matters, since wezu gave an update on the Panda-chan model, let me give a quick update regarding my tutorial: As a mini-game, it’s coming along swiftly enough, I think: the player can walk around, bump into the outer walls, fire a laser, and kill some randomly-spawning enemies, gaining score as they do.
I’m currently wrestling with the particle system; for some reason, radiative emission doesn’t seem to work with anything other than a box-emitter, whether I use the default Particle Panel or my own.
Tutorials re work is a good idea using the new pipeline render, reflection probes and some post effects.
It’s low poly, it can be achieved in Panda 3D without lot of effort.
For a beginner’s tutorial, I’d rather avoid delving into the more advanced features of Panda; I want to stick to simple, straightforward, “out of the box” features, and use a style that works with those.
It’s low-poly, but I disagree that it’s low-effort. (In terms of modelling and texturing, let me clarify.) As I said, look at the quality of the textures, and of the model, for that matter.
Sharp Accent tutorial uses low poly flat polygons without textures.
You mean Unity 3d game kit ? That one is advanced graphics.
Panda 3D manual is chunks of code, it’s not what i would call a complete game tutorial, like the ones Sharp Accent is making.
No, I meant the Soulslike tutorial (which I presume is the Sharp Accent one, based on the logo in that video).
Again, I’m not talking about advanced graphics. Indeed, I’m not talking about engine-side complexity, but about the models and textures used. I don’t agree that those are as low-effort as you say.
But honestly, shall we just agree to disagree? I really don’t want to argue about this.
That’s what I’m in the process of working on!
Specifically, I’m working on a “beginner’s tutorial”–a “first game with Panda3D” tutorial. I’m keeping it simple and short (in terms of code): I’m using out-of-the-box features like the auto-shader generator and engine-standard shadows, simple approaches to implementation, and so on.
(Wezu has proposed a more in-depth tutorial, above.)
You made more than one point here or I’ll have to reply to each separately as I don’t disagree with all of them.
Investment concerns - I agree with rdb about more people investing in Patreon than based on the tiny statistical data from the forums. It work similar to Kickstarter: once you get two or more big donators the funding per month or per project can increase exponentially. There are many reasons how and why big donators can appear but one in particular is the poll was visible only to those visiting the forum.
Dozen better things to do - maybe, or maybe not. See, if you make your “product” more presentable and adopotable and when that draws more users it may actually be more beneficial than doing anything else for an open source project as now you have more people working on those dozen or more things you mentioned.
Finally, come on, raising 500 USD which you can cut to 450 after my donation is not that much for facelift of all assets in the engine. If you consider that a lot then I guess “mediocrity will lead to obscurity” if we have it your way. I had a conversation once (5-6) years ago why a fellow indie dev who didn’t want to even consider Panda. His response was along the lines of “if the developers can’t afford to spend time improving the elevator pitch of their tool then why should I assume it’s a good idea to spend time on my side to check out their tool?”. These days, it makes perfect sense to me. It’s not just about us being drawn to eyecandy. It’s about the “eye candy”, and I use this phrase very liberally, showing the potential users that the developers care enough about the future of their tool to maintain and make their tool presentable to users in the first place.
I could list many courses on Udemy or video series on Youtube supposedly proving the opposite. Maybe you should make a compelling argument on why you think so rather than making a statement.
I agree that complex assets are not necessary, but claiming that best tutorials have to use simple assets wouldn’t make sense to me either. And complex is a vague word as well.
From what I’ve learned from my time with Unity or Godot when you have your characters, props, levels, etc as Prefaps (which is something awesome and speeds up workflow tremedously), then whether you have a minecraft model or Geralt from Witcher 3 model does not matter as they are controlled the same way by the programmer and same functions are available for each. One does not require more work in code to set up than the other. In Panda we don’t have Prefabs out of the box, but even in Panda you can have the bump maps, normal maps, gloss maps, glow maps, etc. all set up automatically by the model loader. So unless you mean something else by complex, it shouldn’t make the code of the tutorial a single line more complex.
Even without these maps, the higher detailed model can look tremendously better than a simpler or lower quality one.
So why does it matter from a code simplicity standpoint if a “simple” or “complex” model is used? From my experience from different online courses and video playlists that it doesn’t matter at all and is based on old misconception when all the shading maps were loaded separately and added more lines of code as well as the mistake of not differentiating between simply better models as in having better topology, higher resolution texture (1024x1024) and proportion characters and other models made by non-artists. Here’s an example:
Playstation 1 era model, remastered version for mobile phones: https://www.models-resource.com/resources/big_icons/21/20328.png
Uses two 512x512 ordinary textures only.
Only 1125 vertices. https://i.imgur.com/p3ZuCIs.png
Things get even better looking with models designed for flat shading or cel shading.
Now compare these to RoamingRalph.egg. I understanding the latter was done by a non-professional, but that is not my point.
Need I say more?
This is why I say it is 2019. Honestly, I feel like most people here have lost touch with time. In 2019, you not only have much easier and novel ways to raise money but also much more in gamedev is automated and doesn’t require a single line of code from the game dev to use more “complex” models.
Sure, that could work.
But as I mentioned most things are already easy to achieve since its set up by the model loader. Unless you mean things like PBR materials, SSAO, etc which I don’t think should be used either. But even without them surely you’ll agree the models can have bump mapping or at least higher res textures or better topology like in my above examples. Godot has glow maps and bump maps on models in a simple walk around and jump 3d platformer sample, it doesn’t add anything to the code to have them.
I disagree, even models pulled out of PS2 games as in the images I shared with all shaders disabled still look good, I’d say tremendously better to what we currently have. I think I have some models from newer games such as Skyrim I can show how they look in shadeless mode if you’re still not convinced.
As for artistic cohesion, that’s why I suggest to hire a student or pro modeller to make the models rather than us coders making programmer’s art.
This community effort idea sounds like a good idea at first, but I think the old panda3dprojects or pandaprojects (forgot the name of the site) proved that this goes nowhere when the user base is still small. When it grows then you can filter out the talented folks who made something (code, asset) actually good enough to include as official samples for the engine, but for that you need talented people in the community and for that you need a decently sized community first. Godot devs did this, as a refrence for you guys.
I’m just trying to help here and not start an argument for fun. I’m not saying people here currently are not talented. I’m saying we, and that includes me, are not talented enough in 2d and 3d art to make better sample assets on our own.