--- In croftsoft-ajgp@yahoogroups.com, "Roahn Wynar" <rwynar@...> wrote:
>
Any name of those new MVC Java game libraries out there (that have copied the
basic idea and over the years either simplified the execution or even improved
upon it) ?
And of course i am curious about the answer to the question
"It can't really hurt, can it? " (about the use of coalescing)
--- On Fri, 8/28/09, skinloasmaios <skinloasmaios@...> wrote:
> First, i cant find the article of
> Jeffrey Kesselman anywhere on the web. I would appreciate it
> if you could somehow point me to the rigth direction.
>
> Next, a question i have is this: Is automatic images what
> is refered to as "managed images" ?
I am headed out on travel but I wanted to answer this question quickly. I will
try to answer the question from the other reader sometime later this weekend.
Try typing the URL for the article into archive.org and see if a copy has been
preserved.
Yes, "automatic images" is the original name that Kesselman gave to what is now
known as "managed images". I spoke to him about it at a conference once and he
said he got into a little trouble for giving it the name "automatic images"; he
did not say why. That might be why he pulled the article off of the Web.
I bought my first Scala book. I have not started reading it yet so I have no
opinion of Scala so far. I thought I would check it out because I am getting
ready to write concurrent simulations and Scala is said to be a good programming
language for concurrency. Here is a related article on concurrency in Java that
I wrote not too long ago:
http://croftsoft.com/library/tutorials/tpu/
--
David Wallace Croft / (214) 636-3790 m
http://www.CroftSoft.com/people/david/
First, i cant find the article of Jeffrey Kesselman anywhere on the web. I would
appreciate it if you could somehow point me to the rigth direction.
Next, a question i have is this: Is automatic images what is refered to as
"managed images" ?
Thank you in advance
I have made a study of your book and thank you for it. I do have this question:
Has the architecture you presented to us been overcome by events? Your post suggests that coalescing has, but what about the rest of the MVC structure? I have done well with your libraries so far, but surely there are new MVC Java game libraries out there that have copied your basic idea and over the years either simplified the execution or even improved upon it? Your book, good as it is, is getting dated, right?
I really dug into your book, btw, and do use the coalescing, because your library make it pretty easy. It can't really hurt, can it?
Subject: Re: [croftsoft-ajgp] Coalescing of Repaint events
> From: skinloasmaios <skinloasmaios@yahoo.com> > So, actually i am only posting this to get a confirmation > from D.W. Croft (and for readers with the same question).
I think that if I ever wrote a second edition of my book "Advanced Java Game Programming", I would recommend to readers that they just repaint the entire screen each frame instead of trying to coalesce. My reasoning would be this:
* Computers are really fast these days.
* Repainting the entire screen is much less complex than coalescing.
* Timing is more consistent and therefore easier to constrain when you are repainting the same number of pixels each frame. This is my primary reason.
> From: skinloasmaios <skinloasmaios@...>
> So, actually i am only posting this to get a confirmation
> from D.W. Croft (and for readers with the same question).
I think that if I ever wrote a second edition of my book "Advanced Java Game
Programming", I would recommend to readers that they just repaint the entire
screen each frame instead of trying to coalesce. My reasoning would be this:
* Computers are really fast these days.
* Repainting the entire screen is much less complex than coalescing.
* Timing is more consistent and therefore easier to constrain when you are
repainting the same number of pixels each frame. This is my primary reason.
If you are on this discussion list, please also sign up for the announcements
list:
http://tech.groups.yahoo.com/group/croftsoft-ajgp-announce/
--
David Wallace Croft / (214) 636-3790 m
http://www.CroftSoft.com/people/david/
In page 93, it writes that the coalescing of the painting events
uses a rectangular area covering all the pixels of the areas requested to be
repainted, resulting in painting pixels that dont need to be painted
when the areas are far apart.
In
http://java.sun.com/j2se/1.4.2/docs/guide/awt/1.3/enhancements.html#coalescing
it states that AWT doesnt use rectangular areas to coalesce, so i suppose it
uses a shape
that is the union of the areas that are asked to be repainted plus a rectangle
to fill in the gap
between them if there is any.. That means that the improvement described in the
book is much less important than my original impression
I cant find something similar to the above in java.sun.com about Swing
coalescing.
Are we sure that things work the way you describe them in your book? (i am
referring to the example of pixels calculations in page93)
Also the Sprite example from your collection (when run on my computer)
doesnt make clear the idea as described in your book (the frame rate slowing
down or accelarating).
This was my email sent to David W. Croft. He asked me to post my quesion here.
Well, in the meantime i think i figured it out. In the book, it writes that only
when sprites are far apart, and have no common areas, then the coalescing might
bring a performance decrease, because of the extra pixels of a rectangular area
that are going to be repainted without needing to. This rectangular area is
needed in order to create one shape, a polygon consisting of the union of: the
rectangles needed to be repainted plus the rectangle (or rectangles) needed to
connect the original rectangles.
So, actually i am only posting this to get a confirmation from D.W. Croft (and
for readers with the same question).
My original message was:
> > The code presented in page 107 of the book tries to
> > illustrate
> >
> > the idea of having variable delay times for the sleep()
> > method.
> >
> >
> >
> > Does the update(); method call refer to the
> > update(JComponent c) of the component animator
> >
> > (and its just a typo), or is it a method call to the
> > update() method of the component?
> >
> >
> >
> > If so, the following call of the repaint() will result into
> > another call to the update(),
> >
> > resulting into two updates for every pass of the while
> > loop.
> >
> >
> >
> > Either way, the idea presented is not affected, but i have
> > the bad habit of trying
> >
> > to understand as possible.
> >
> >
> >
> > Thank you in advance
I was asked to post my question here.
Later, rereading the chapter helped me understand it a little more, so i sent
another one:
me and my bad habit...
re-reading the whole chapter a couple of times i can say that my question was
way way off.
Since the classes presented in the book override the repaint() method of a
JComponent,
and the code of the override doesnt call upate(), my question was not valid.
(Though a hint printed in discrete font at the end of the page stating that fact
could hava saved me some time)
Thats what happens when you lack intelligence while having the bad habit of
trying to understand as much as possible....
Thank you for your time.
Amarden,
--- amdarden <amdarden@...> wrote:
> That fixed that problem and I was hoping it would
> fix the following,
> but it didn't:
>
>
E:\croftsoft\src\com\croftsoft\apps\compiler\Calc.java:5:
> package
> java_cup.runtime does not exist
> import java_cup.runtime.Symbol;
You don't need to compile that stuff. I recommend
that you use the Ant build. It will compile just what
you need.
=====
David Wallace Croft / (214) 636-3790 mobile / (214) 731-9284 home
That fixed that problem and I was hoping it would fix the following,
but it didn't:
E:\croftsoft\src\com\croftsoft\apps\compiler\Calc.java:5: package
java_cup.runtime does not exist
import java_cup.runtime.Symbol;
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:5:
package java_cup.runtime does not exist
import java_cup.runtime.*;
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:72:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
public static Symbol scanInteger ( String text )
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:331:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
public Symbol nextToken ()
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcParser.java:11:
package java_cup.runtime does not exist
import java_cup.runtime.*;
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcParser.java:13:
package java_cup.runtime does not exist
public class CalcParser extends java_cup.runtime.lr_parser {
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcParser.java:116:
package java_cup.runtime does not exist
java_cup.runtime.lr_parser parser,
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcParser.java:114:
package java_cup.runtime does not exist
public java_cup.runtime.Symbol do_action(
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcParser.java:144:
package java_cup.runtime does not exist
public java_cup.runtime.Symbol scan()
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcParser.java:312:
package java_cup.runtime does not exist
java_cup.runtime.lr_parser CUP$CalcParser$parser,
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcParser.java:310:
package java_cup.runtime does not exist
public final java_cup.runtime.Symbol CUP$CalcParser$do_action(
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\Mini.java:5: package
java_cup.runtime does not exist
import java_cup.runtime.Symbol;
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniScanner.java:5:
package java_cup.runtime does not exist
import java_cup.runtime.*;
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniScanner.java:65:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.mini.parse.MiniScanner
public static Symbol scanConstant ( String text )
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniScanner.java:380:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.mini.parse.MiniScanner
public Symbol nextToken ()
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\CUPTokenScanner.java:19:
package java_cup.runtime does not exist
public java_cup.runtime.Symbol nextToken ( ) throws IOException;
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniParser.java:9:
package java_cup.runtime does not exist
import java_cup.runtime.*;
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniParser.java:12:
package java_cup.runtime does not exist
public class MiniParser extends java_cup.runtime.lr_parser {
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniParser.java:251:
package java_cup.runtime does not exist
java_cup.runtime.lr_parser parser,
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniParser.java:249:
package java_cup.runtime does not exist
public java_cup.runtime.Symbol do_action(
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniParser.java:279:
package java_cup.runtime does not exist
public java_cup.runtime.Symbol scan()
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniParser.java:316:
package java_cup.runtime does not exist
java_cup.runtime.lr_parser CUP$MiniParser$parser,
E:\croftsoft\src\com\croftsoft\apps\compiler\mini\parse\MiniParser.java:314:
package java_cup.runtime does not exist
public final java_cup.runtime.Symbol CUP$MiniParser$do_action(
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:10: package
javax.media.j3d does not exist
import javax.media.j3d.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:11: package
javax.vecmath does not exist
import javax.vecmath.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:13: package
com.sun.j3d.utils.applet does not exist
import com.sun.j3d.utils.applet.MainFrame;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:14: package
com.sun.j3d.utils.behaviors.mouse does not exist
import com.sun.j3d.utils.behaviors.mouse.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:15: package
com.sun.j3d.utils.geometry does not exist
import com.sun.j3d.utils.geometry.Box;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:16: package
com.sun.j3d.utils.geometry does not exist
import com.sun.j3d.utils.geometry.ColorCube;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:17: package
com.sun.j3d.utils.image does not exist
import com.sun.j3d.utils.image.TextureLoader;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:18: package
com.sun.j3d.utils.universe does not exist
import com.sun.j3d.utils.universe.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DFrame.java:43: cannot
find symbol
symbol : class Canvas3D
location: class com.croftsoft.apps.tag3d.Tag3DFrame
Canvas3D canvas3D )
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DKeyListener.java:6:
package javax.media.j3d does not exist
import javax.media.j3d.Transform3D;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DKeyListener.java:7:
package javax.media.j3d does not exist
import javax.media.j3d.TransformGroup;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DKeyListener.java:31:
cannot find symbol
symbol : class TransformGroup
location: class com.croftsoft.apps.tag3d.Tag3DKeyListener
protected TransformGroup viewTransformGroup;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DKeyListener.java:55:
cannot find symbol
symbol : class TransformGroup
location: class com.croftsoft.apps.tag3d.Tag3DKeyListener
TransformGroup viewTransformGroup )
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DStateManager.java:7:
package javax.media.j3d does not exist
import javax.media.j3d.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:10: package
javax.media.j3d does not exist
import javax.media.j3d.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:11: package
javax.vecmath does not exist
import javax.vecmath.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:13: package
com.sun.j3d.utils.applet does not exist
import com.sun.j3d.utils.applet.MainFrame;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:14: package
com.sun.j3d.utils.behaviors.mouse does not exist
import com.sun.j3d.utils.behaviors.mouse.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:15: package
com.sun.j3d.utils.geometry does not exist
import com.sun.j3d.utils.geometry.Box;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:16: package
com.sun.j3d.utils.geometry does not exist
import com.sun.j3d.utils.geometry.ColorCube;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:17: package
com.sun.j3d.utils.image does not exist
import com.sun.j3d.utils.image.TextureLoader;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:18: package
com.sun.j3d.utils.universe does not exist
import com.sun.j3d.utils.universe.*;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:39: cannot
find symbol
symbol : class Canvas3D
location: class com.croftsoft.apps.tag3d.Tag3DWorld
protected Canvas3D canvas3D;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:40: cannot
find symbol
symbol : class Locale
location: class com.croftsoft.apps.tag3d.Tag3DWorld
protected Locale locale;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:41: cannot
find symbol
symbol : class TransformGroup
location: class com.croftsoft.apps.tag3d.Tag3DWorld
protected TransformGroup viewTransformGroup;
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:94: cannot
find symbol
symbol : class BranchGroup
location: class com.croftsoft.apps.tag3d.Tag3DWorld
public static BranchGroup createSceneGraph ( )
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:154: cannot
find symbol
symbol : class TransformGroup
location: class com.croftsoft.apps.tag3d.Tag3DWorld
TransformGroup transformGroup,
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:251: cannot
find symbol
symbol : class Canvas3D
location: class com.croftsoft.apps.tag3d.Tag3DWorld
Canvas3D canvas3D,
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:252: cannot
find symbol
symbol : class Locale
location: class com.croftsoft.apps.tag3d.Tag3DWorld
Locale locale,
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:253: cannot
find symbol
symbol : class TransformGroup
location: class com.croftsoft.apps.tag3d.Tag3DWorld
TransformGroup viewTransformGroup )
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:266: cannot
find symbol
symbol : class Transform3D
location: class com.croftsoft.apps.tag3d.Tag3DWorld
Transform3D transform3D )
E:\croftsoft\src\com\croftsoft\apps\tag3d\Tag3DWorld.java:264: cannot
find symbol
symbol : class TransformGroup
location: class com.croftsoft.apps.tag3d.Tag3DWorld
public TransformGroup addHead (
E:\croftsoft\src\com\croftsoft\apps\vaft\app\ControlPanel.java:9:
package com.orbs.open1.mit.io does not exist
import com.orbs.open1.mit.io.Serialize;
E:\croftsoft\src\com\croftsoft\apps\wyrm\server\WyrmServerBean.java:10:
package javax.xml.bind does not exist
import javax.xml.bind.JAXBException;
E:\croftsoft\src\com\croftsoft\apps\wyrm\server\WyrmServerBean.java:20:
package com.croftsoft.apps.wyrm.xjc does not exist
import com.croftsoft.apps.wyrm.xjc.*;
E:\croftsoft\src\com\croftsoft\apps\wyrm\server\WyrmServerBean.java:551:
cannot find symbol
symbol : class ResponseState
location: class com.croftsoft.apps.wyrm.server.WyrmServerBean
private ResponseState serveRequestState ( UserLocal userLocal )
E:\croftsoft\src\com\croftsoft\apps\wyrm\server\WyrmServerBean.java:652:
cannot find symbol
symbol : class Response
location: class com.croftsoft.apps.wyrm.server.WyrmServerBean
private Response createResponse (
E:\croftsoft\src\com\croftsoft\apps\wyrm\servlet\WyrmServlet.java:18:
package javax.xml.bind does not exist
import javax.xml.bind.JAXBContext;
E:\croftsoft\src\com\croftsoft\apps\wyrm\servlet\WyrmServlet.java:19:
package javax.xml.bind does not exist
import javax.xml.bind.JAXBException;
E:\croftsoft\src\com\croftsoft\apps\wyrm\servlet\WyrmServlet.java:20:
package javax.xml.bind does not exist
import javax.xml.bind.Marshaller;
E:\croftsoft\src\com\croftsoft\apps\wyrm\servlet\WyrmServlet.java:21:
package javax.xml.bind does not exist
import javax.xml.bind.Validator;
E:\croftsoft\src\com\croftsoft\apps\wyrm\servlet\WyrmServlet.java:30:
package com.croftsoft.apps.wyrm.xjc does not exist
import com.croftsoft.apps.wyrm.xjc.*;
E:\croftsoft\src\com\croftsoft\apps\wyrm\servlet\WyrmServlet.java:89:
cannot find symbol
symbol : class JAXBContext
location: class com.croftsoft.apps.wyrm.servlet.WyrmServlet
private JAXBContext jaxbContext;
E:\croftsoft\src\com\croftsoft\apps\wyrm\servlet\WyrmServlet.java:232:
cannot find symbol
symbol : class JAXBException
location: class com.croftsoft.apps.wyrm.servlet.WyrmServlet
throws JAXBException
E:\croftsoft\src\com\croftsoft\core\jnlp\JnlpServicesImpl.java:6:
package javax.jnlp does not exist
import javax.jnlp.*;
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:5:
package javax.media.j3d does not exist
import javax.media.j3d.*;
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:6:
package javax.vecmath does not exist
import javax.vecmath.*;
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:59:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DLib
Transform3D transform3D, Matrix3d rotation )
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:59:
cannot find symbol
symbol : class Matrix3d
location: class com.croftsoft.core.media.j3d.Transform3DLib
Transform3D transform3D, Matrix3d rotation )
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:79:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DLib
Transform3D transform3D, double radians )
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:102:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DLib
Transform3D transform3D, double radians )
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:125:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DLib
Transform3D transform3D, double radians )
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:150:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DLib
Transform3D transform3D,
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DLib.java:188:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DLib
Transform3D transform3D,
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DState.java:5:
package javax.media.j3d does not exist
import javax.media.j3d.Transform3D;
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DState.java:35:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DState
Transform3D transform3D )
E:\croftsoft\src\com\croftsoft\core\media\j3d\Transform3DState.java:48:
cannot find symbol
symbol : class Transform3D
location: class com.croftsoft.core.media.j3d.Transform3DState
public void getTransform3D ( Transform3D transform3D )
E:\croftsoft\src\com\croftsoft\apps\compiler\Calc.java:156: cannot
find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.Calc
Symbol parseTree = null;
E:\croftsoft\src\com\croftsoft\apps\compiler\Calc.java:162: cannot
find symbol
symbol : method debug_parse()
location: class com.croftsoft.apps.compiler.CalcParser
parseTree = parser.debug_parse ( );
E:\croftsoft\src\com\croftsoft\apps\compiler\Calc.java:166: cannot
find symbol
symbol : method parse()
location: class com.croftsoft.apps.compiler.CalcParser
parseTree = parser.parse ( );
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:64:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
Symbol symbol = null;
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:77:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
return new Symbol ( INTEGER, new Integer ( text ) );
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:365:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
return new Symbol ( EOF );
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:385:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( MOD ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:389:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( LPAREN ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:393:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( RPAREN ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:397:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( TIMES ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:401:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( PLUS ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:405:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( MINUS ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:409:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( DIVIDE ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:417:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( SEMICOLON ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:421:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( LT ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:425:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( GT ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:429:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( VARIABLE, yytext ( ) ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:433:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( EXP ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:437:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( NEQ ); }
E:\croftsoft\src\com\croftsoft\apps\compiler\CalcScanner.java:441:
cannot find symbol
symbol : class Symbol
location: class com.croftsoft.apps.compiler.CalcScanner
{ return new Symbol ( ASSIGN ); }
Note: * uses or overrides a deprecated API.
--- In croftsoft-ajgp@yahoogroups.com, David Wallace Croft
<david@c...> wrote:
> Amarden:
>
>
> --- amdarden <amdarden@y...> wrote:
> > I have installed "J2EE 1.4 SDK and Sun Java System
> > Application Server
> > Platform Edition 8.1 2005Q1 February 4, 2005" in
> > D:\Sun\AppServer.
>
>
> Search in an appserver subdirectory for a JAR file
> called j2ee.jar and add it to your classpath.
>
>
> =====
> David Wallace Croft / (214) 636-3790 mobile / (214) 731-9284 home
Amarden:
--- amdarden <amdarden@...> wrote:
> I have installed "J2EE 1.4 SDK and Sun Java System
> Application Server
> Platform Edition 8.1 2005Q1 February 4, 2005" in
> D:\Sun\AppServer.
Search in an appserver subdirectory for a JAR file
called j2ee.jar and add it to your classpath.
=====
David Wallace Croft / (214) 636-3790 mobile / (214) 731-9284 home
I'm trying to compile the code that I downloaded and I get these
errors:
E:\croftsoft\src\com\croftsoft\ajgp\http\ScoreServlet.java:5: package
javax.servlet does not exist
import javax.servlet.*;
E:\croftsoft\src\com\croftsoft\ajgp\http\ScoreServlet.java:6: package
javax.servlet.http does not exist
import javax.servlet.http.*;
Below is my path statement:
PATH=C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\Sys
tem32\Wbem;d:\Sun\AppServer\bi
n
This is where the javax directory is located on my system:
D:\Sun\AppServer\docs\api\javax\servlet
I have installed "J2EE 1.4 SDK and Sun Java System Application Server
Platform Edition 8.1 2005Q1 February 4, 2005" in D:\Sun\AppServer.
Can you tell me where the problem is?
Thanks,
amdarden
Darrin,
--- darrin_p_s <darrin_p_s@...> wrote:
> How does this code work without access to java_cup?
The java_cup stuff is extraneous. You can safely
ignore unless you are really curious.
=====
David Wallace Croft / (214) 636-3790 mobile / (214) 731-9284 home
I checked the jc.bat file and noticed that there isn't anything in
it to build the lib directory, so that doesn't do it.
I installed and ran Ant against the build.xml in the croftsoft
directory and although it does execute and show the example games,
it does not build the expected directory that would house the third
party tools (like java_cup).
How does this code work without access to java_cup?
--- In croftsoft-ajgp@yahoogroups.com, "darrin_p_s"
<darrin_p_s@a...> wrote:
>
> I have the book, but I must not be understanding something.
>
> You mention that you use J to map to your croftsoft, and that
under
> it you house the ext directory to hold JAR files needed for the
> build. I expected to see such a directory being created when I
> unzipped the file that I got from SourceForge that goes along with
> your book, but no such directory was created.
>
> Reading chapter 1 I see that certain directories get created when
> the source is compiled so maybe that is it, but I cannot get your
> jc.bat to work either!
>
> I have the unzipped croftsoft directory under my C: drive. When I
> try to execute the batch file I get this:
>
> C:\croftsoft\bin>jc *.java
>
> C:\croftsoft\bin>javac -deprecation -d C:\croftsoft\lib -
sourcepath
> C:\croftsoft\src -classpath
> C:\croftsoft\lib;C:\croftsoft\ext\j2ee.jar;C:\croftsoft\ext\jaxb
> -api.jar;C:\croftsoft\ext\jaxb-ri.jar;C:\croftsoft\ext\jaxb-
> libs.jar;C:\croftsoft\ext\javaws.jar *.java
> error: cannot read: *.java
> 1 error
>
> My understanding is that error refers to invalid source being in a
> java file, but I could be wrong on that.
>
> So, besides just downloading croftsoft_2003-11-09.zip and
expanding
> it, what else needs to be done before I can run the jc.bat file to
> generate the other directories?
>
> Thanks.
>
> --- In croftsoft-ajgp@yahoogroups.com, David Wallace Croft
> <david@c...> wrote:
> > Darrin,
> >
> >
> > --- darrin_p_s <darrin_p_s@a...> wrote:
> > > Anyway, what I need is a step by step guide of what:
> >
> >
> > This should help:
> > http://croftsoft.com/library/books/ajgp/
> >
> > Also, Chapter 1 should give you what you need. If it
> > doesn't, let me know and I'll post an update.
> >
> >
> > =====
> > David Wallace Croft / (214) 636-3790 mobile / (214) 731-9284 home
I have the book, but I must not be understanding something.
You mention that you use J to map to your croftsoft, and that under
it you house the ext directory to hold JAR files needed for the
build. I expected to see such a directory being created when I
unzipped the file that I got from SourceForge that goes along with
your book, but no such directory was created.
Reading chapter 1 I see that certain directories get created when
the source is compiled so maybe that is it, but I cannot get your
jc.bat to work either!
I have the unzipped croftsoft directory under my C: drive. When I
try to execute the batch file I get this:
C:\croftsoft\bin>jc *.java
C:\croftsoft\bin>javac -deprecation -d C:\croftsoft\lib -sourcepath
C:\croftsoft\src -classpath
C:\croftsoft\lib;C:\croftsoft\ext\j2ee.jar;C:\croftsoft\ext\jaxb
-api.jar;C:\croftsoft\ext\jaxb-ri.jar;C:\croftsoft\ext\jaxb-
libs.jar;C:\croftsoft\ext\javaws.jar *.java
error: cannot read: *.java
1 error
My understanding is that error refers to invalid source being in a
java file, but I could be wrong on that.
So, besides just downloading croftsoft_2003-11-09.zip and expanding
it, what else needs to be done before I can run the jc.bat file to
generate the other directories?
Thanks.
--- In croftsoft-ajgp@yahoogroups.com, David Wallace Croft
<david@c...> wrote:
> Darrin,
>
>
> --- darrin_p_s <darrin_p_s@a...> wrote:
> > Anyway, what I need is a step by step guide of what:
>
>
> This should help:
> http://croftsoft.com/library/books/ajgp/
>
> Also, Chapter 1 should give you what you need. If it
> doesn't, let me know and I'll post an update.
>
>
> =====
> David Wallace Croft / (214) 636-3790 mobile / (214) 731-9284 home
Darrin,
--- darrin_p_s <darrin_p_s@...> wrote:
> Anyway, what I need is a step by step guide of what:
This should help:
http://croftsoft.com/library/books/ajgp/
Also, Chapter 1 should give you what you need. If it
doesn't, let me know and I'll post an update.
=====
David Wallace Croft / (214) 636-3790 mobile / (214) 731-9284 home
I downloaded the code then tried to compile. I first noticed that
the j2ee.jar needed to be in the build path so I added that, but
then I saw a lot of java_cup problems.
I went to the index to see what I could find with respect to
java_cup but nothing was listed! So, I googled and found a place to
download it from and did so. I then built a jar of all of the
classes and made that available to my editor (Eclipse 3.0) to build
with, but that did not work (could not find the classes to import
out of the jar...manifest problem maybe?).
Anyway, what I need is a step by step guide of what:
1) Needs to be downloaded
2) Where it is to be downloaded from
3) Where it needs to be placed
4) Anything else you can think of!
Does such a guide exist?
On second thought, what would really be great is if a big zip file
containing ALL of the required code (and third party tools needed by
the code) could be placed where it could be downloaded in one lump
sum.
Going here for this and there for that and getting everything to
integrate just right is much more of a pain than if a single zip
file could be offered.
Maybe this could be made available for purchase?
Thanks!
Sorry for abbreviation
Pfe mean
programmer's file editor
Junaid Ahmed
__________________________________
Do you Yahoo!?
Yahoo! Mail - 50x more storage than other providers!
http://promotions.yahoo.com/new_mail
Dear David Wallace Croft,
According to your advice I have downloaded the Ant
from the Internet to compile and run the first example
in the book but unfortunately I don't know how to use
the Ant. I am stuck in the first example. Could you
please send me the e-mail how to compile and run the
example while using Ant. I use Pfe to compile .java
files. One more thing when I downloaded the Ant
folder, it was in compressed form. I extracted the
files from the zip folder, I want to know that whether
I have to install the Ant while using setup file or
straight away use Ant to compile the files(I did not
find any setup file to install the Ant).Thanks.
Regards,
Junaid Ahmed
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - 100MB free storage!
http://promotions.yahoo.com/new_mail
Dear David Wallace Croft,
According to your advice I have downloaded the Ant
from the internet to compile and run the first example
in the book but unfortunately I don't know how to use
the Ant. I am stuck in the first example. Could you
please send me the e-mail how to compile and run the
example while using Ant. I use Pfe to compile .java
files. Thanks.
Regards,
Junaid Ahmed
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!
http://promotions.yahoo.com/new_mail
Junaid Ahmed,
--- Junaid <junaid_kp@...> wrote:
> I have compiled the first example of the
> book "Advance JAVA
> Game programming" but unfortunately unable to run
> that example could
> you let me know how to run that example of chapter
> 1.
If you are using Ant and the provided build.xml file,
you should be able to compile and run the Chapter 1
example using the target "basics", as in the
following:
ant basics
=====
David Wallace Croft
President, CroftSoft Inc (www.croftsoft.com)
(214) 636-3790 mobile / (214) 731-9284 home
__________________________________
Do you Yahoo!?
Yahoo! Mail is new and improved - Check it out!
http://promotions.yahoo.com/new_mail
Dear David Wallace Croft,
I have compiled the first example of the book "Advance JAVA
Game programming" but unfortunately unable to run that example could
you let me know how to run that example of chapter 1.
Regards,
Junaid Ahmed
GameJUG Discussion List Members:
Jake2 is an Open Source port of Quake II from C++ to
the Java programming language. I was able to install
it on my computer at work and demonstrate it to my
co-workers. It runs very fast.
http://bytonic.de/html/jake2.html
Jake2 uses JOGL. We are considering using JOGL
instead of Java3D for our game development. What do
you think?
https://jogl.dev.java.net/
We are also looking at X3D and considering
cross-platform standalone players that support this
standard. Does anyone have experience with CyberX3D?
http://cic.nist.gov/vrml/vbdetect.htmlhttp://www.cybergarage.org/vrml/
=====
David Wallace Croft
President, CroftSoft Inc (www.croftsoft.com)
(214) 636-3790 mobile / (214) 731-9284 home
__________________________________
Do you Yahoo!?
New and Improved Yahoo! Mail - Send 10MB messages!
http://promotions.yahoo.com/new_mail
levimak:
levimak wrote:
> I was looking at this book and was interested in buying it, but I have
> a question first. In our java class we are using something called
> BreezySwing. It is just a simple form of swing. I was wondering if
> this book covered some of the basics of swing in the first few
> chapters. Thanks!
While there are a couple of previously published Java game programming
books that do introduce Swing, my book assumes that you are already
familiar with the core APIs.
--
David Wallace Croft, President, CroftSoft Inc
Author of "Advanced Java Game Programming"
http://www.croftsoft.com/library/books/ajgp/
(214) 731-9284 home
I was looking at this book and was interested in buying it, but I have
a question first. In our java class we are using something called
BreezySwing. It is just a simple form of swing. I was wondering if
this book covered some of the basics of swing in the first few
chapters. Thanks!
levimak
Ted Shab,
Ted Shab wrote:
> I can't find where to download the code from your
> Advanced Java Game Programming Book.
You should be able to download from a link on this page:
http://www.croftsoft.com/library/books/ajgp/
> Great book, btw.
Thanks!
--
David Wallace Croft, President, CroftSoft Inc
Author of "Advanced Java Game Programming"
http://www.croftsoft.com/library/books/ajgp/
(214) 731-9284 home
Mike Schmidt,
Mike Schmidt wrote:
> I just wanted to post and let you know that I purchased your book today,
> April 2nd, at Borders in Tampa, FL in case you were not aware that it was on
> shelves yet.
Thank you. I put out an announcement on GameJUG.
> I also wanted to suggest that although you corrected the URL to the book's
> web site in the group online, you may want to add a redirection to your web
> site so those typing the incorrect URL automatically get moved to the
> correct section of your site without having to troubleshoot the address.
OK, I have put up a redirect page and added this to the errata page:
http://www.croftsoft.com/books/ajgp/http://www.croftsoft.com/library/books/ajgp/errata/
Thanks again.
--
David Wallace Croft, President, CroftSoft Inc
Author of "Advanced Java Game Programming"
http://www.croftsoft.com/library/books/ajgp/
(214) 731-9284 home
Advanced Java Game Programming mailing list members:
I am splitting this mailing list into two halves, one for author
announcements only and the other for reader discussion. This list
that you are currently on will be the reader discussion list.
For notification of book errata, supplemental online material, new
classes, new multimedia files, and new example games, please subscribe
to the new announcements mailing list:
http://egroups.com/group/croftsoft-ajgp-announce/
My book will be shipping within a few days. If you are the first to
get it or you see it on the bookstore shelves, please post a message
here so that I know when it is out.
More information about the book is available here:
http://croftsoft.com/books/library/ajgp/
Sammy Munoz wrote:
> Also, when does your book come out? And since we all
> we're good students, any discounts on your new book?
January, I believe. Publishers often give members of GameJUG special
discounts: http://www.gamejug.org/benefits/
--
David Wallace Croft, President, CroftSoft Inc
Author of "Advanced Java Game Programming"
http://www.croftsoft.com/library/books/ajgp/
(972) 883-2205 office, (214) 731-9284 home