Ashley's Forum Posts

  • Download Plugin SDK 0.99.3 now

    Sorry it's late!

    Changes in this SDK:

    • The SDK now reflects the large codebase changes that happened in the 0.99 release. As a result, parts of the SDK have changed. Compiled plugins are binary compatible (meaning plugins built with old SDKs still work with 0.99+), but some changes may be needed for old plugins to build again in the 0.99.3 SDK. Anything that no longer works in this SDK has deprecated_ prepended to it, so the compiler will tell you that the deprecated functions no longer exist.
    • The SDK includes the new templated vector math functions in use in 0.99+ (in the cr:: namespace) as well as new definitions for the new renderer. Old rendering functions in VRuntime are deprecated; rendering is now performed by a new interface (IRenderer) pointed to by the 'renderer' member of CRunObject. I don't think this affects any third party plugins because I haven't seen any that use the renderer yet.
    • The object filter (colour tint + opacity) has been moved. It used to be a D3DCOLOR in info.filter (now renamed info.deprecated_filter); it is now a cr::color in info.pInfo->filter.
    • There are a couple of new VRuntime functions.

    I don't think existing third party plugins will suffer too much from this - they should only need small changes. If you need any help let me know and I'll try sort it out. Note that the includes in stdafx.h have changed and if you don't update these your plugin won't compile and will give a lot of errors: if you haven't changed stdafx.h, just paste in the new one from the new SDK, or look at the new headers and typedefs and paste them in.

  • It has nothing to do with vectors

    CRunObject** instances;
    int count;
    pRuntime->GetTypeInstances(pType, instances, count);
    
    if (instances != NULL) {
    	CRunObject** i = instances;
    	CRunObject** end = instances + count;
    
    	for ( ; i != end; ++i)
    		pRuntime->DestroyObject(*i);
    }[/code:f76xay8n]
  • All you need is a static variable. Something like a static vector of instances in your CRunObject, which you add the 'this' pointer to in OnCreate and remove in the destructor. Then, all objects have access to the list of all objects with that behavior.

  • Call VRuntime::GetTypeInstances to get a list of the instances in that type, then call VRuntime::DestroyObject on each of them.

  • Try the Fade behavior maybe?

    Are you creating a text object in that event? If no text objects exist, actions on the object have no effect.

    Other than that, try posting a .cap showing what you mean.

  • Really? I'm sure I tested this to make sure the box was around the visible object, not where it would be at Z=0. Can you upload a .cap showing this?

  • Looks like a bug, submit a bug report.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Yeah, possibly. I'll see about having an option to bundle the necessary DLLs, but it could be 6-7mb for all required components.

    I think it's the red cross icon that freaks people out. Maybe I should change it to the 'i' information icon. Either way I'll definitely be getting rid of the D3DX requirement in Construct 2, it's annoying and text rendering is broken anyway. I'll just rewrite all the stuff it does myself

  • Do what the messagebox says Install the August 2008 DirectX update or newer, and it will start working.

    It's nothing to do with DirectX 8. It needs the August 2008 DirectX 9 update.

    I've tried re-wording the error message about 3 times now and people still seem to get insanely confused about going to the Microsoft website and updating DirectX. If you've got any suggestions on how to better word this so people don't explode when they see it, I'm all ears

  • I don't see why you need distort maps for a scrolling marquee... it sounds like you can do that just moving the objects around.

    The top left of the object box is like the top left corner of the selection box in the layout editor - it rotates with the object. The bounding box never rotates, it's an unrotated box big enough to fit in the whole rotated object. Still, if the current calculation works absolutely fine... why are you asking?

    Also I'd hope you use a function instead of a macro for that calculation!

  • This is fixed in the next build, a bug report for it was submitted and closed.

  • Exactly that.

  • It's probably not possible with render targets, however - but some newer graphics cards support non-power-of-two textures anyway. There are other problems with splitting textures, such as slowing down rendering, and also image quality: due to floating point positioning, it's difficult to stitch the two sections together without a visible seam on the join appearing in many circumstances.

  • 1. Eh, it'd be difficult, you'd need changes to the Sprite object really. What do you want to do?

    2. There is no "left corner". Do you mean the top left corner or bottom left corner? Of the sprite box or the bounding box? What's wrong with the code you posted anyway?

    3. See the following functions in VRuntime:

    	virtual bool			GetImagePoint(CRunObject* obj, int number, POINTF& pt) = 0;
    	virtual bool			GetImagePoint(CRunObject* obj, const char* pointName, POINTF& pt) = 0;[/code:2d3trdro]
    
    4.  object->info.curAnim->curFrame or similar.  Check curAnim is not NULL.  You might need a call to UpdateAnimation or similar after it.  Check the Sprite object source to see how it does it.
    
    5.  An unused leftover from a failed idea.
  • No, sorry, there's no way to have | as an option... I think it's called the 'pipe' character though.