| Announcements The discussion about news and announcements posted on our front page. |
|
Privileged
Posts: 453
Join Date: Oct 2005
Location: Taiwan
|
06-Jan-2006, 17:29
Quote:
|
I had a quick look, the SpriteEngine seems to use its own customised versions of...
|
It's not looks like customised unit(if you look into the source carefully).
I haven't change any code,just add some extended function,define...etc.
Sprite engine itself needs many extended function,define to get full features.(to be more powerful than official)
You can see like AsphyreCanvas.pas contain many draw functon.
Those single function can use for all condition or purpose.
It is a little hard to remove these customised unit and add a own unit for sprite engine,like spriteDef.pas.
Because it will make sprite engine more complex or something doesn't work perfect.
Quote:
|
its possible that any future upgrades to AE will break SpriteEngine...
|
I think you don't worry about this,i'll update sprite engine more often to made compatable with new version of Asphyre.
|
|
|
|
|
Resourceful
Posts: 36
Join Date: Dec 2005
|
06-Jan-2006, 18:52
Ah, I see... rather than a full rewrite then, how about renaming your custom units to avoid compiler confusion?
|
|
|
|
|
Developer
Posts: 1,943
Join Date: Oct 2005
Location: Pointer = nil;
|
07-Jan-2006, 06:15
Quote:
|
Originally Posted by bigsofty
SpriteEngine needs to remove the dependencies with these old units and needs to be made compatable with the new units. If SpriteEngine depends on certain features that are within these units then I am sure the Afterwarp guys would be flexible for better integration within AE.
|
It's much easier said than done. You see, Sprite Engine is not just an add-on to Asphyre, but it is more like an extension/mod in a way.
In order to make Sprite Engine independent from Asphyre's code a lot of effort is required and will need significant changes both in Asphyre native components and Sprite Engine itself.
However, when I get some more time, I'll try to review Sprite Engine carefully and see if few things can be modified in Asphyre to make it easier to integrate different versions of Asphyre and/or Sprite Engine together.
|
|
|
|
|
Professional
Posts: 57
Join Date: Oct 2005
Location: China Xi'An
|

07-Jan-2006, 08:31
Quote:
|
Originally Posted by lifepower
However, when I get some more time, I'll try to review Sprite Engine carefully and see if few things can be modified in Asphyre to make it easier to integrate different versions of Asphyre and/or Sprite Engine together.
|
It's sounds very good !
|
|
|
|
|
Professional
Posts: 63
Join Date: Dec 2005
|
07-Jan-2006, 13:35
Quote:
|
Originally Posted by lifepower
However, when I get some more time, I'll try to review Sprite Engine carefully and see if few things can be modified in Asphyre to make it easier to integrate different versions of Asphyre and/or Sprite Engine together.
|
Trying to co-integrate New Asphyre and Sprite Engine. I`ll post Results later
|
|
|
|
|
Professional
Posts: 63
Join Date: Dec 2005
|
07-Jan-2006, 15:28
Attached Sprite engine, demos compiling well with few fixes, but BLEND2FX consts from DraculaLin seems to be not working in this pack.
problems with these:
fxAdd2X = $7FFFFFF0;
fxLight = $7FFFFFF1;
fxLightAdd = $7FFFFFF2;
fxBright = $7FFFFFF3;
fxBrightAdd = $7FFFFFF4;
fxGrayScale = $7FFFFFF5;
fxOneColor = $7FFFFFF6;
------
All these effects result black squares instead of sprites like these :
http://pxsoft.afterwarp.net/screens/clipboard.jpg
White circle in center is my experimens on bug fixing.
Dark squares is standart light sprites in this demo, rendered with fxLight(by default)
|
|
|
|
|
Developer
Posts: 1,943
Join Date: Oct 2005
Location: Pointer = nil;
|
07-Jan-2006, 16:34
The constants definitely seem wrong. Also, I changed your IMG to URL tags. Please use smaller images *or* add images as attachments (so they'll have thumbnails) rather than linking directly.
|
|
|
|
|
Privileged
Posts: 453
Join Date: Oct 2005
Location: Taiwan
|
07-Jan-2006, 17:46
It's not wrong. It's work fine.
They are some extended DrawFx.
Although you need to add some code into Asphyre2D.pas.
Code:
procedure TAsphyre2D.SetDrawFx(DrawFx: Cardinal);
const
CoefD3D: array[TBlendCoef] of Cardinal = (D3DBLEND_ZERO, D3DBLEND_ONE,
D3DBLEND_SRCCOLOR, D3DBLEND_INVSRCCOLOR, D3DBLEND_SRCALPHA,
D3DBLEND_INVSRCALPHA, D3DBLEND_DESTALPHA, D3DBLEND_INVDESTALPHA,
D3DBLEND_DESTCOLOR, D3DBLEND_INVDESTCOLOR, D3DBLEND_SRCALPHASAT);
BlendOpD3D: array[TBlendOp] of Cardinal = (D3DBLENDOP_ADD,
D3DBLENDOP_REVSUBTRACT, D3DBLENDOP_SUBTRACT, D3DBLENDOP_MIN, D3DBLENDOP_MAX);
var
SrcCoef : TBlendCoef;
DestCoef: TBlendCoef;
BlendOp : TBlendOp;
begin
if (Direct3DDevice = nil) then Exit;
Fx2Blend(DrawFx, SrcCoef, DestCoef, BlendOp);
with Direct3DDevice do
begin
if (SrcCoef <> bcOne)or(DestCoef <> bcZero)or(BlendOp <> boAdd) then
begin
SetRenderState(D3DRS_ALPHABLENDENABLE, iTrue);
if (FAlphaTesting) then
SetRenderState(D3DRS_ALPHATESTENABLE, iTrue);
SetRenderState(D3DRS_SRCBLEND, CoefD3D[SrcCoef]);
SetRenderState(D3DRS_DESTBLEND, CoefD3D[DestCoef]);
SetRenderState(D3DRS_BLENDOP, BlendOpD3D[BlendOp]);
end else
begin
SetRenderState(D3DRS_ALPHABLENDENABLE, iFalse);
if (FAlphaTesting) then
SetRenderState(D3DRS_ALPHATESTENABLE, iFalse);
end;
case DrawFx of
$7FFFFFF0: // fxAdd2x
begin
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_ONE);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_MODULATE2X);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
end;
$7FFFFFF1: // fxLight
begin
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_DESTCOLOR);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_ONE);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_MODULATE2X);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
end;
$7FFFFFF2: // fxLightAdd
begin
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_DESTCOLOR);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_ONE);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_MODULATE4X);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
end;
$7FFFFFF3: // fxBright
begin
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_MODULATE2X);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
end;
$7FFFFFF4: // fxBrightAdd
begin
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_MODULATE4X);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
end;
$7FFFFFF5: // fxGrayScale
begin
SetRenderState(D3DRS_TextureFactor,$FF696937);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_DOTPRODUCT3);
SetTextureStageState(0, D3DTSS_COLORARG2, D3DTA_TFACTOR);
end;
$7FFFFFF6: // fxOneColor
begin
SetRenderState(D3DRS_SRCBLEND, D3DBLEND_SRCALPHA);
SetRenderState(D3DRS_DESTBLEND, D3DBLEND_INVSRCALPHA);
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_MULTIPLYADD);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
end;
else
begin
SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_MODULATE);
SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_MODULATE);
//reset GrayScale
//SetTextureStageState(0, D3DTSS_ALPHAOP, D3DTOP_SELECTARG1);
//SetTextureStageState(0, D3DTSS_COLOROP, D3DTOP_SELECTARG1);
end;
end;
end;
end;
|
|
|
|
|
Professional
Posts: 63
Join Date: Dec 2005
|
09-Jan-2006, 07:46
Thx... i missed that in my experiment  now it`s fully operational.
But there is funny thing appears  :
ground tiles looks like real3d+bupmapped (eye trick)
is it new dxheaders features? or just unexpected consequence of my semi-professional joining new Asphyre and Sprite engine?
Last edited by Pixelsoft; 09-Jan-2006 at 08:01.
|
|
|
|
|
Visitor
Posts: 2
Join Date: Apr 2006
|
how long can i use chinese char in asphyre? -
02-May-2006, 05:35
 i have used asphyre Amusement myself for a long time.so ,
i want to say:Thanks for everybody who work hard with asphyre.
but,i have a headache very much too .
i very hope for that such as the title.Just as your have saw,The ability of my English is limited .in fact,More people are like me in china.those are very want to useing asphyre too.I just propose.In any case.Solve this problem.in china,asphyre must be Development.
especially:GUI design,and so on
Do we still hope?
Last edited by ptymsx1; 02-May-2006 at 05:56.
|
|
|
|
| Thread Tools |
|
|
| Display Modes |
Linear Mode
|
Posting Rules
|
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts
HTML code is Off
|
|
|
vBulletin® is copyright ©2000 - 2010, Jelsoft Enterprises Ltd.
vBulletin Skin developed by: vBStyles.com

Copyright (c) 2000 - 2008 Afterwarp Development. All rights reserved.
|