Mikal's Forum Posts

  • 3D Showcase, 3d models, effects, physics (PixelMetal samples)

    Subscribe to Construct videos now
  • I want to express my sincere appreciation for Scirra's dedication and innovation in developing Construct 3 (C3). The continued improvements, driven by both Scirra's creativity and the valuable suggestions from the community, have made C3 an amazing game development tool. I see that SDK V2 is aligned with this direction.

    However, as user demand for 3D functionalities grows, I believe a collaborative approach can further enhance C3's capabilities. This proposal outlines a community-developed 3D add-on suite that would not only empower users with 3D features but also remove the 3d feature pressure from Scirra's valuable resources, to allow more focus on other areas of C3 development.

    This proposal outlines a suite of three FOSS (Free and Open Source Software) projects:

    1. 3D Object: Handles 3D models and animations (already FOSS).
    2. 3D Effects: Manages 3D lighting, height fog, and other visual effects.
    3. 3D Physics Behavior: Provides realistic physics simulations for 3D games, including kinematic character controller

    These projects leverage C3's unique visual scripting and event interfaces, allowing for rapid development without coding. They are currently functional but require changes to comply with SDK V2 and completely eliminate any engine hacks.

    To enable this suite with V2, I propose the following limited and prioritized SDK V2 requests:

    1. World coordinates for effects (Git #236): Essential for 3D lighting and effects.
    2. GPU 3D rotation (Git #230): Improves 3D object and shape rotation performance.
    3. SDK V1 functionality support in V2: Ensures backward compatibility with existing add-ons, without any internal engine access.
    4. Mesh data access (Git #283): Allows for features like 3D text and physics tri-mesh terrain support.

    I have prepared examples showcasing C3's 3D capabilities with these addons and without any addons. It shows the viability of C3 doing a nice level of 3D in commercial and educational projects. The intent is that this collaboration would benefit Scirra, the product, and the entire community. The examples follow this post.

    I am open to discussing this further through any available channel (forum, Discord, email, etc.). Thank you to the community for their feedback on this post. Looking forward to feedback, alternate approaches, etc.

  • Headbang Games do you mean you are using browser text rendering or composing letters from boxes used as pixels?

    If browser rendering, across all browsers it seems difficult to turn off 'font-smoothing'.

    I think I understand the problem better, the issue is with how C3 implements the text object and how it is blitted to a lower resolution canvas.

    I think HBG means to use HTML rendered canvas separate from c3 canvas (e.g. using C3 HTML layers) to render at screen resolution to get a sharp effect. I've tried a quick experiment and talked with the OP about this and they are doing experiments. They are also using High quality scaling.

  • We used a ProUI addon called remote sprite, but you can do it with normal sprite also and we fetched the png from our CDN.

    You can also just frames of animation and a map between frame and item.

  • Can you comment more on your use case?

    For example in our game which uses Spine extensively for the characters with a lot of customization, we have a shop with all the available items to add to the spine character and show them all and let you add them to the spine characters in realtime. However, in the shop on a per item basis, we don't use a spine object per item, to show it. Instead, we just a normal sprite with the image for the spine attachment.

  • Try Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Try Now Construct 3 users don't see these ads
  • Use the bounding box override properties to set the size of the render.

    Sir LoLz

    It is likely because the effects only work with webGL, but the project is set to webGPU instead.

    Try: In the project setting change the Advanced -> Enable WebGPU setting to 'No' and check again.

    If that was the problem, it is not a SDK V2 issue.

    Echoing skymen here, please identify these developers/customers:

    We see them - desperate customers with ruined projects come and beg us for help. Sometimes the addon developer responsible has left the community, and there's nobody left to help them.

    We can reach out and see if the community might already have solutions, or are able to do quick fixes while we await a full featured SDK V2 and SDK V2 addon ports from the C3 community.

    Another question: will SDK V2 be a superset of SDK V1? If not, can you please make us aware of what SDK V1 features will be lost, so we can adjust accordingly?

  • zmpq Don't forget - to do Spine operations on a Spine object, you have to wait until it is loaded:

    I recognize that some addon developers do want to be able to do more advanced things with the engine; the best approach for that is a more comprehensive and documented API which is supported long-term.

    In regards to this please keep in mind a class of addons: animation / render addons as you update V2 SDK:

    • Spine
    • Spriter

    The Spine dev team _wants_ to create an official C3 Spine runtime. They have resources to do it, they already officially support runtimes for ue, unity, godot, phaser, pixi, etc. - mostly using the engines extensive APIs to do efficient rendering (and in the pixi case using the webGL renderer directly as it is exposed as part of their 'API'). Spine seems to be the lead for pro game dev (and they have a reduced feature set lower cost essential version.) They also recently added physics support.

    I know in the past you worked with the Spriter dev to get support for their runtime. I hope you can do similar with Spine. I will happily retire my 3rd-party version of the C3 Spine addon, if an efficient C3 addon that supports SDK V2 comes from the Spine dev team and is officially supported by them.

    The spine team requested a SDK V2 feature and I posted it to the suggestion board.

    Here's the current C3 Spine Addon (V1 SDK, uses webgl render) using spine 4.2 w/ the new physics features (on legs, dress, hair, very smooth!)

  • Please just post the test project to sendgb.com and put a link here.

  • For resizing, use the bounding box properties and offset properties (see more information about it on the git website).

    Not sure what your issue is with creating a spine project, if you want to share the project with purpose/comments, I can take a look.

    Ashley In this case:

    For example this suggestion appears to involve code reaching in to the internal engine and risking compatibility disaster when a static method could have sufficed and would have worked robustly indefinitely.

    It is more mixed, yes the original author should not have go into the internals, but also the SDK could have supported the required function, but it was not available at the time.

    Yes, the suggested work around is possible by editing every addon that needs the workaround. I think we can agree having the top level SDK method which did not require that is more beneficial and more compatible across all addons. You mentioned adding the top level SDK in the discussion, which is a good idea.

    So, please keep this in mind for V2 SDK, don't expose the bare minimum to match SDK V1, it should be a nice rounded, powerful superset. That will put C3 and SDK V2 authors on a nice trajectory to make the C3 community successful. Which in turn makes Scirra successful. Also, it would be less work for you in the long run in terms of back and forth requests for V2 additions and more importantly if SDK V2 is too limited, prior C3 addons may no longer be possible to be ported to SDK V2, creating a compatibility disaster for users of these addons.

    I want to add that I think the discussion on that suggestion is a good back and forth between C3 dev and addon dev. Both sides working to come to a solution working towards improving C3 for the community, users and business.

    Ashley As guidance I would be very interested to hear what some of your top 2-3 3rd party addons are - that you think substantially help the C3 community and Scirra? I think this would help us understand what type of addons you are thinking about as you update the V2 SDK.

    If you have devs that are having issues with their current projects and addons that they need help with _now_, please also tell them to post in the forums or the Construct Community Discord or connect us with them. We (the C3 dev community) can help - we can potentially contact the original addon devs and we can fix the addon ourselves in the community as a stopgap until V2 SDK is comprehensive enough to handle a good forward compatible version of the addon.

    Ashley

    It's not hypothetical. Disasters have happened, are happening, and will continue to get worse.

    Without judgement on the future state, the C3 dev community can (and do) help out with these issues (addon no longer working).

    If you have devs that are having issues with their current projects and addons that they need help with _now_, please also tell them to post in the forums or the Construct Community Discord. We (the C3 dev community) can help - we can potentially contact the original addon devs and we can fix the addon ourselves in the community. Please let us know.

    This is not intended to be an argument for future state, but as a way to help fellow devs that are having issues, but haven't contacted the community yet.

  • > How would you process the data? Use events or JS?

    i'd like to be able to use events

    Ok, I can look at returning a JSON string of the data that you can parse with a C3 JSON object, which you can use events to examine.

    Also FYI Animation Names is already available as an expression in the current version.