etxztn / pulpcore Goto Github PK
View Code? Open in Web Editor NEWAutomatically exported from code.google.com/p/pulpcore
Automatically exported from code.google.com/p/pulpcore
What steps will reproduce the problem?
1. Go to interactive pulpcore website
2. try any examples include the Milpa game
What is the expected output? What do you see instead?
Applet should be displaying after javascript loading
However, after loading, the applet area become a zombie, it is frozen
What version of the product are you using? On what operating system?
Windows 7
Java RE 1.7.0-b147
new Chrome
Please provide any additional information below.
Examples can be run in an Applet viewer in Netbeans.
I guess it is the problem of the loading javascript
By the way, using Toolkit.get.... I found this will cause Applet errors
On my another computer, with JRE 6, every thing is fine
Original issue reported on code.google.com by [email protected]
on 22 Oct 2011 at 2:08
- Use Java 5 language features
- Use Java 5 API
Java 1.4 usage is shrinking quickly, and PulpCore would be better with Java 5
language features and
removing some Java 1.4 support code (timer code, for example).
Original issue reported on code.google.com by [email protected]
on 11 Apr 2009 at 12:54
What steps will reproduce the problem?
1. Change the background of the textField to BLACK and the foreground of
text to WHITE.
What is the expected output? What do you see instead?
I would expect to see a blinking Caret, but don't. I also looked for a
function to change Caret color for the blinking.
What version of the product are you using? On what operating system?
0.10.11, and I also checked the SVN repository.
Please provide any additional information below.
This is the code that I think needs changing. Don't shoot me if I am wrong,
since I haven't compiled the pulpcore sources with any changes.
pulpcore.Sprite;
// Show Caret
if (focusVisible && selectionLength == 0 &&
timeUntilBlinkOff > 0 && caretPosition >= scrollPosition)
{
int caretX = font.getStringWidth(text, scrollPosition,
caretPosition);
if (caretX >= 0 && caretX < maxWidth) {
g.setColor(Colors.BLACK);
g.fillRect(caretX, 0, 1, font.getHeight() +
EXTRA_CARET_HEIGHT*2);
}
}
Original issue reported on code.google.com by [email protected]
on 2 Mar 2008 at 2:54
Using the Pulp core, we can see the following constants:
KEY_P 64 //Why isn't this set to 80?
KEY_A 65
KEY_O 79
.... //There is no entry with a value of 80
KEY_Q 81
1. Is this a design decision or a bug?
2. If it's a design decision, it should probably be documented more
clearly; I was looping through all possible "letter" key values, and missed
P because of this.
Thanks again; the engine works great, and I've got a workaround for this,
so it's no biggie. :)
Original issue reported on code.google.com by [email protected]
on 8 Nov 2007 at 8:39
I am using bundle files for localize the texts on my game but pulpcore
shows warn about my bundle.properties and don't copy it to jar or dist
Is there any way to make it go to jar so i can use them?
Or do i have to do my own Bundle system and use other file extension?
Original issue reported on code.google.com by [email protected]
on 18 Mar 2008 at 4:49
I am trying to generate a gradient font and i am using this
family = Fusi.ttf
size = 32
color = #99ccff
gradient.color=#0033cc
stroke.color=#003399
stroke.size=0.5
shadow.y = 3
shadow.x = 3
shadow.color = #7f000000
But it doesn't work good, it just fill's all image with the second color,
also would be nice to have some more options, like more gradient stops, or
blured drop shadow
Also, would it be possible to make PulpCore able to load Angelcode font
like the ones generated by this tool
http://slick.cokeandcode.com/demos/hiero.jnlp
They look almost like PulpCore generated fonts
Original issue reported on code.google.com by [email protected]
on 15 Mar 2008 at 1:08
It would be nice to allow the setting of the compression level when using
PNGWriter instead of defaulting to no compression.
I've attached a patch that will add a second (optional) parameter to the
PNGWriter.write method. The value for this second parameter can be any of
the compression levels found in "Deflater". The default is no compression.
Original issue reported on code.google.com by daniel.watling
on 9 Nov 2009 at 6:57
Attachments:
1/ when using the 'copy' constructor of AnimatedImage, I expect the current
state of the copy will be exactly the same as the one of the original
animated image, including:
- the copy 'isPlaying' state is equal
- the current frame is the same
This is not the case.
2/
CoreImage imgs[] = new CoreImage[3];
imgs[0] = CoreImage.load("image1.png");
imgs[1] = CoreImage.load("image2.png");
imgs[3] = CoreImage.load("image3.png");
AnimatedImage anim = new AnimatedImage(imgs);
anim.setFrame(1);
AnimatedImage anim-copy = new AnimatedImage(anim1);
System.out.println("anim frame = "+anim.getFrame());
// displays '1' ==> OK
System.out.println("anim-copy frame = "+anim-copy.getFrame());
// displays '0' ==> PROBLEM.
Original issue reported on code.google.com by [email protected]
on 29 Jul 2009 at 7:06
Port to Desktop using OpenGL and OpenAL. Either LWJGL or JOGL/JOAL.
Explore provising one or two automatic packaging scripts:
- Web Start
- Getdown
- Install4J and exe4j
- Launch4J
- jsmooth
Original issue reported on code.google.com by [email protected]
on 11 Apr 2009 at 1:05
replace the un-needed multiplications by their constant equivalent in
CoreMath.sin() function (CoreMath.java, lines 799 and below):
int d = mul((1 << INTERNAL_BITS) / (2*3*4*5*6*7*8*9), fxSquared);
int c = mul(d - (1 << INTERNAL_BITS) / (2*3*4*5*6*7), fxSquared);
int b = mul(c + (1 << INTERNAL_BITS) / (2*3*4*5), fxSquared);
int a = mul(b - (1 << INTERNAL_BITS) / (2*3), fxSquared);
return sine >> (INTERNAL_BITS - FRACTION_BITS);
Maybe detailed multiplications should be kept in comments.
+ same idea for bit shifts of constant value INTERNAL_BITS and
(INTERNAL_BITS - FRACTION_BITS)
Original issue reported on code.google.com by [email protected]
on 9 Jul 2009 at 5:32
What steps will reproduce the problem?
1. Start with Fedora 9 as the OS
2. Install Firefox (I've tried with the latest 3.0 release and a Minefield
nightly)
3. Install the latest JDK (6u10)
4. Attempt to view one of the PulpCore demos
What is the expected output? What do you see instead?
Expect the demo to load and render without hanging. Instead, Firefox
hangs and required a kill -9 to end.
What version of the product are you using? On what operating system?
This is on Fedora 9, using JDK 6u10, and recent versions of Firefox.
Please provide any additional information below.
This problem seems to be related to the JDK upgrade, as the PulpCore demos
worked for me on the same system, using jdk 1.6.0_05
Original issue reported on code.google.com by [email protected]
on 28 Oct 2008 at 10:28
The following constructor (in file EncryptedInt.java , line 111) doesn't
set the initial value as expected, instead it set the value to zero.
public EncryptedInt(PropertyListener listener, int value, ARC4 cipher) {
super(listener, 0);
// should be
super(listener, value);
}
Note: the bug presence in a real application has not been tested.
Original issue reported on code.google.com by [email protected]
on 15 Apr 2008 at 10:41
Hi, i like allot Pulp Core, but i think the build system needs to be
redesigned.
Don´t know if you ever used Netbeans, Netbeans use ant also for build and
run java applications. I make a project and run, it wont build up a jar but
run from the /build directory, and when i change one file, only that file
is compiled and it quick run the application again
In Pulp Core every time i change something, i have to compile everything,
remake all res, rebuild jar, retroweaver it and then run on Pulp Player.
That slows down development.
I think with some work you could do this.
When we call ant (run) it automatic build ( res ( svg, fonts, etc... ),
sources ) into the build/ folder and Pulp Player would run from the
classes, without jar them. So when we change anything on res or source, ant
would check for file date and if its newer then compile/copy it to build/
folder then Pulp Player can run it again.
Now when we do a "ant build" it will do the compile check ( same as for run
) and then make the jar\zip and all other needed files, and also retroweave
and proguard the files.
This might be hard to implement, but will result in a lot faster deployment
of the games
Another suggestion ( that might not be so good ) is:
Separate the code into 2 jars, one with just basic applet stuff that would
load very fast on browser, other other with extra code plus game code, and
maybe the res also, and then after load the first jar, use ClassLoader to
load the other jar, don't know if it works on applets but might work.
This would just give a faster loading on applet on browser, but then take
more time on downloading extra classes
The only advantage, is that applet will be created on page lots faster, i think
Original issue reported on code.google.com by [email protected]
on 14 Mar 2008 at 7:58
What steps will reproduce the problem?
1. create the following basic program:
Sprite nb = new FilledSprite(100,100,20,20,YELLOW);
Timeline tl = new Timeline();
tl.moveTo(nb, 200, 300, 1000);
tl.after(1).moveTo(nb, 0, 0, 1000);
addTimeline(tl);
2. Run the program
I expect to see the sprite moving from its initial location (100,100) to
the second location (200,300) and from the second location (200,300) to the
third location (0,0).
What I see instead is, the sprite moving from (100,100) to (200,300), then
it disapears and appears immediately at its initial location. Finally, I it
moves from the initial location (200,300) to the third location (0,0).
Somehow moveTo doesn't update the properties inside the sprite after it has
finished animating it. Then, when another moveTo occurs, it uses the
initial location properties, instead of the new ones, (which were supposed
to be setted by moveTo when it is done animating it).
The same happens for scaleTo.
Even setting the properties directly with a TimeLineEvent won't solve this
problem, that is:
tl.moveTo(nb, 200, 300, 1000);
tl.after().add(new TimelineEvent(1) {
public void run() {
// TODO Auto-generated method stub
nb.x.set(200);
nb.y.set(300);
}
});
tl.after(210).moveTo(nb, 313, 313, 2000);
Tried it on the latest pulpcore (0.11.5) on Windows vista, with the
following javas:
java version "1.6.0_13"
Java(TM) SE Runtime Environment (build 1.6.0_13-b03)
Java HotSpot(TM) Client VM (build 11.3-b02, mixed mode, sharing)
Eclipse SDK
Version: 3.4.2
Build id: M20090211-1700
(not that I think it is related).
Original issue reported on code.google.com by [email protected]
on 15 Jul 2009 at 7:54
What steps will reproduce the problem?
1. Initialize a new ScrollPane
2. Add it to the scene with add();
What is the expected output? What do you see instead?
Expected output should be nothing or a empty ScrollPane.
What version of the product are you using? On what operating system?
Latest pulpcore svn build as of now. Java 1.6.
Original issue reported on code.google.com by [email protected]
on 3 Jun 2009 at 7:02
The Sprite.intersects(Sprite) method doesn't seem to be working properly on
ImageSprites with custom aspect ratios and pixel-level intersections.
Simple test scene (Use the background image from the Hello World example):
public class TestScene extends Scene2D {
private FilledSprite sprite;
private ImageSprite sprite2;
public void load() {
Sprite background = new
FilledSprite(0,0,Stage.getWidth(),Stage.getHeight(), Colors.BLUE);
add(background);
sprite = new FilledSprite(200,200,100,100, Colors.WHITE);
sprite2 = new ImageSprite("background.png",200,200,50,100);
add(sprite);
add(sprite2);
// sprite2.setPixelLevelChecks(false);
}
public void update(int elapsedTime) {
super.update(elapsedTime);
sprite.setLocation(Input.getMouseX(),Input.getMouseY());
if(sprite.intersects(sprite2)) {
sprite.alpha.set(50);
} else {
sprite.alpha.set(255);
}
}
}
Uncommenting the "sprite2.setPixelLevelChecks(false)" line produces the
expected results.
Original issue reported on code.google.com by [email protected]
on 26 May 2008 at 4:25
What steps will reproduce the problem?
1. Go to BubbleMark Example on the Pulpcore site
2. Use any of the Javascript controls
3. None of the controls work
What is the expected output? What do you see instead?
The controls should affect the applet. Controls are unresponsive.
What version of the product are you using? On what operating system?
Pulpcore 0.11.4, Java 1.6 Update 10, Windows Vista Home Premium, Firefox
3.0.5 or Internet Explorer 8; does not matter
Please provide any additional information below.
Javascript controls works with this system using Pulpcore 0.11.3 from the
downloads. The latest nightly build does not work.
Original issue reported on code.google.com by [email protected]
on 24 Dec 2008 at 8:37
Immutable images will allow certain rendering optimizations and automatic
mip-mapping. Mutable
images will be created with a copyMutable() method or something similar.
Original issue reported on code.google.com by [email protected]
on 11 Apr 2009 at 12:59
CoreImage[] myCoreImages = new CoreImage[3];
// fill in myCoreImages
Animatedmage image = new AnimatedImage(myCoreImages[]);
System.out.println("image is playing = "+image.isPlaying());
// displays "TRUE" ==> PROBLEM.
Original issue reported on code.google.com by [email protected]
on 29 Jul 2009 at 7:09
Please create and publish Maven 2 modules to the central maven repository (or
some other
repository).
Original issue reported on code.google.com by [email protected]
on 24 Apr 2009 at 10:57
Add built in support for fixed timesteps.
Physics engines and some AI code need a fixed timestep to operate correctly.
Fixed timesteps can
be implemented at the Scene-level, but it doesn't apply to timelines and
properties.
Optionally, provide a hook to allow interpolation as Gaffer describes here:
http://gafferongames.com/game-physics/fix-your-timestep/
Original issue reported on code.google.com by [email protected]
on 11 Apr 2009 at 12:40
There is a error in Reflection.java. The following will fix it. (No idea
how to commit source!)
/**
Creates a Reflection filter with the default parameters.
*/
public Reflection() {
this(1);
}
/**
Creates a Reflection filter with the specified gap.
*/
public Reflection(int gap) {
this(gap, 0.75f);
}
/**
Creates a Reflection filter with the specified gap and
reflection height (as a fraction of
the input image).
*/
public Reflection(int gap, float fraction) {
this(gap, fraction, 128, 0);
}
Original issue reported on code.google.com by [email protected]
on 6 Mar 2010 at 2:31
What steps will reproduce the problem?
1. Create a Sprite
2. make it invisible
3. make it visible again
What is the expected output? What do you see instead?
The sprite is updated twice. We could expect that it will be updated only
once when the Sprite is made visible again (step 3). We shouldn't waste
time updating a Sprite that doesn't show on the screen.
Original issue reported on code.google.com by [email protected]
on 5 Apr 2009 at 4:35
I've created a simple life cycle event management package and integrated it
with PulpCore.
Here's a patch.
Note, I did a diff on the directory after I imported it into Eclipse as a
project, so when applying the patch locally, be careful about the Eclipse
specific files and specific build.properties entries.
Also, the code needs to be cleaned up because my editor settings are
different than those of the files - is there a Jalopy file or something
similar somewhere so I can format them correctly?
I also included a screenshot of the Quick template running with it.
Original issue reported on code.google.com by [email protected]
on 26 Mar 2008 at 5:22
Attachments:
For some reason, drawSprite() is called more than necessary in a Sprite. I
made a test on FilledSprite, but there should be a problem with other types
of sprites too.
What steps will reproduce the problem?
1. add a trace in FilledSprite.drawSprite().
System.out.println("redrawing FilledSprite").
2. create a small example:
public void load() {
sprite = new FilledSprite(Colors.BLACK);
add(sprite);
photo1 = new ImageSprite("photo1.png", 0, 0);
add(photo1);
}
public void update(int elapsedTime) {
if(Input.isPressed(Input.KEY_SPACE)) {
photo1.x.animateTo(10, 1000);
}
3. run the app. Hit space
4. You see in the console that FilledSprite is drawn 10 times during the
animation. BUT this shouldn't be the case because it's not dirty. The only
way the method should be called is by changing one of it's property
(height, width, x, y or fillColor). Other cases shouldn't redraw this sprite.
What is the expected output? What do you see instead?
drawSprite should be call only once in this example.
Original issue reported on code.google.com by [email protected]
on 5 Apr 2009 at 5:28
Google Web Toolkit allows for java developers to cross-compile java code into
javascript code.
Your framework could, theoretically, run "natively" in the browser if it gets
cross-compiled for javascript and if it uses the canvas html tag.
Original issue reported on code.google.com by [email protected]
on 5 Dec 2011 at 12:20
1. produce a new scene, in the load() method put the following code:
<code>
FilledSprite s = new FilledSprite(0,0,30,30,YELLOW);
add(s);
Timeline tl = new Timeline();
Timeline sec = new Timeline();
tl.after().move(s, 50,0,0,0,2000);
sec.move(s, 0,0, 100, 100, 2000);
final Int i = new Int(0);
sec.after().addEvent(new TimelineEvent(10) {
@Override
public void run() {
i.set(i.get()+1);
CoreSystem.print("run"+i.get());
}
});
tl.after().add(sec);
addTimeline(tl);
</code>
2. Execute the scene
We expect to see, in the following order:
1) The yellow square moves from (50,0) to (0,0), during 2 seconds.
2) The yellow scene moves from (0,0) to (100,100) during 2 seconds.
3) A "run1" line appears in the console.
What we actually see is:
1) The yellow square moves from (50,0) to (0,0), during 2 seconds.
2) A "run1" line appears in the console.
3) The yellow scene moves from (0,0) to (100,100) during 2 seconds.
4) A "run2" line appears in the console.
5) A "run3" line appears in the console.
Note that the repetition of run2 and run3 is probably related to issue
27[1]
Also note that this happens only if the child Timeline 'sec' should happen
in the middle of the father Timeline 'tl'.
This happens with the latest svn version
[1] http://code.google.com/p/pulpcore/issues/detail?id=27
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 1 Aug 2009 at 7:58
What steps will reproduce the problem?
1. Run Milpa game demo
2. Observe erratic motion/animation.
What is the expected output? What do you see instead?
Expected smooth motion.
What version of the product are you using? On what operating system?
- AMD Athlon 64 X2 Dual system, running Windows XP
- Java build 1.6.0_05-b13
Please provide any additional information below.
- There is a bug with the System.NanoTime implementation on AMD64 X2
machines where the two processors are not completely synchronized, and so
two subsequent calls to NanoTime could return a negative delta. That's
probably what's happening here. I'd be glad to test out any debug
builds/solutions you might come up with, if you're interested in working on
fixing this issue.
Thanks for the excellent framework!
Original issue reported on code.google.com by [email protected]
on 3 Apr 2008 at 12:28
Summary: Extend the current GUI/Widgeting system to support out of the box
sleek customizable Widgets which use EventListeners (for drawing and
updating) to separate code better. Making a more dynamic GUI system as
well as one much easier to code.
Goals and Specifics:
1. Easier coding - Putting chunks of code into event listeners helps in
organizing your code. Of course the old version of handling events in the
update method will still be there.
2. Themed Widgets - Creating buttons from scratch is difficult, so
providing a basic set of reusable buttons easily transformed would
streamline the dev process. Using modern buttons as a default, then having
a default Theme that would be easily editable by the developer. An example
constructor could be ThemedButton(String text, int x, int y, Color
buttonBaseColor). Pulpcore would automaticcaly convert the default button
image to the base color of the developer specifies using some handy image
processing techniques (http://www.jhlabs.com)
(http://www.javalobby.org/articles/ultimate-image/)
3. Clean Up - Specifically making a really sexy scroll bar for the
ScrollPane, automatically creating beveled borders for Group's of widgets,
and adding a basic Layout such as a LinearLayout.
Original issue reported on code.google.com by [email protected]
on 8 Jun 2009 at 4:03
Using OpenGL ES.
Original issue reported on code.google.com by [email protected]
on 11 Apr 2009 at 1:08
Current doesn't actually draw anything until the first update, thus
java2dsprites wont display when you "just" draw them. E.g. when using
transitions (http://jbox2d.org/upload/PulpCoreTransitions/)
Original issue reported on code.google.com by [email protected]
on 12 Apr 2011 at 10:31
Attachments:
What steps will reproduce the problem?
Create two sprites that use INTERPOLATION_NEAREST_NEIGHBOR and have them
overlap each other in playback
What is the expected output? What do you see instead?
Some sprites show some do not. Several hundred exceptions are thrown as
soon as the overlapping sprite come onto the screen.
What version of the product are you using? On what operating system?
This bug was tested in 0.10 and I built a version of 0.11 from svn that did
it too.
I notice if I turned off INTERPOLATION_NEAREST_NEIGHBOR everything works.
Please provide any additional information below.
Here is one of the traces:
[pulpcore-player] pulpcore.platform.graphics.error:
java.lang.ArrayIndexOutOfBoundsException: -448
[pulpcore-player] at
pulpcore.image.CompositeSrcOver.blend(CompositeSrcOver.java:291)
[pulpcore-player] at
pulpcore.image.CoreGraphics.internalDrawScaledImage(CoreGraphics.java:1104)
[pulpcore-player] at
pulpcore.image.CoreGraphics.internalDrawScaledImage(CoreGraphics.java:1057)
[pulpcore-player] at
pulpcore.image.CoreGraphics.drawImage(CoreGraphics.java:777)
[pulpcore-player] at
pulpcore.image.CoreGraphics.drawImage(CoreGraphics.java:748)
[pulpcore-player] at
pulpcore.sprite.ImageSprite.drawSprite(ImageSprite.java:188)
[pulpcore-player] at pulpcore.sprite.Sprite.draw(Sprite.java:654)
[pulpcore-player] at pulpcore.sprite.Group.drawSprite(Group.java:469)
[pulpcore-player] at pulpcore.sprite.Sprite.draw(Sprite.java:654)
[pulpcore-player] at pulpcore.sprite.Group.drawSprite(Group.java:469)
[pulpcore-player] at pulpcore.sprite.Sprite.draw(Sprite.java:654)
[pulpcore-player] at pulpcore.sprite.Group.drawSprite(Group.java:469)
[pulpcore-player] at pulpcore.sprite.Sprite.draw(Sprite.java:654)
[pulpcore-player] at pulpcore.scene.Scene2D.drawScene(Scene2D.java:829)
[pulpcore-player] at core.FAScene.drawScene(FAScene.java:10)
[pulpcore-player] at pulpcore.Stage.animationLoop(Stage.java:656)
[pulpcore-player] at pulpcore.Stage.run(Stage.java:511)
[pulpcore-player] at java.lang.Thread.run(Unknown Source)
Original issue reported on code.google.com by [email protected]
on 17 Feb 2008 at 3:19
1. produce a scene with the following code in it's load() method:
<code>
Timeline tl = new Timeline();
final Int i = new Int(0);
tl.move(s, 0,0, 100, 100, 2000);
tl.after().addEvent(new TimelineEvent(10) {
@Override
public void run() {
i.set(i.get()+1);
CoreSystem.print("run"+i.get());
}
});
addTimeline(tl);
</code>
I expect to see in the console output a single line:
run1
What I actually see is two lines:
run1
run2
Note that this is not related to the fact that the TimelineEvent is
residing within a child Timeline, since if you do `tl.at(0).addEvent(...)`
the event would occur once only.
What version of the product are you using? On what operating system?
Please provide any additional information below.
Original issue reported on code.google.com by [email protected]
on 1 Aug 2009 at 7:51
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.