Welcome, Guest. Please login or register.

Login with username, password and session length

 
Advanced search

11855 Posts in 1569 Topics- by 3054 Members - Latest Member: Ljustin770

11. February 2012, 12:30:19 PM
Xith3D CommunityGeneral CategorySupport (Moderator: Marvin Fröhlich)Problems with getting started
Pages: [1]
Print
Author Topic: Problems with getting started  (Read 522 times)
Fluster
Just dropped in

Offline Offline

Posts: 1


View Profile
« on: 21. March 2010, 11:06:20 AM »

I feel a bit stupid by posting very basic type questions, but since I'm a bit confused, I have to ask.

At first I wanted to download Xith3D as release instead of using SVN, and so I downloaded the latest beta found on the download section. In the package I found the API an examples, which I compiled successfully, but failed to run. I don't have experience of using dll files with Java and so I propably left out something I should have done.

Since there seems to be no good documents of such an install, I decided to try using SVN. I fetched the project and then tried to add the examples I had downloaded, and there I was left with a surprice: even the first example didn't compile, since it expected org.xith3d.base.Xith3DEnvironment to implement org.xith3d.render.RenderEngine, which was not the case in this version of Xith3D. Additionally, there is no longer a method addRenderEngine in class org.xith3d.loop.RenderLoop and these two chages completely broke the example.

So my question is, is the core of the API really changing this much between the versions or what is going on? I find it difficult to get started with Xith3D, especially since I now saw that the API I found has no correspondence of what has been implemented. I could of course create a new API of the code, but even then I'm left with broken examples an uncertainty of what might be working in the future versions.
Logged
badboyboogey
Enjoying the stay
*
Offline Offline

Posts: 40



View Profile
« Reply #1 on: 21. March 2010, 12:16:06 PM »

Hi and welcome, I dont think you have the svn versions of the examples, i beleive the svn path is "https://xith-tk.svn.sourceforge.net/svnroot/xith-tk"
There are two tutorials on how to set things up depending on which ide you use.
Click the Installation link on the Xith.org homepage and you'll find them there.

Stick at it, once you get it figured you'll wonder why you had problems in the first place lol

Just ask if you still cant get things going
Logged
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #2 on: 22. March 2010, 02:17:36 AM »

Remember that you need to check out both the xith AND xith-tk projects from sourceforge.

Marvin, what do you think about including xith as a lib in the xith-tk tests so newbies have an easier time getting up and running?

Also, I think I remember a test runner JNLP from somewhere.  For the life of me, I cannot remember where it is.  Perhaps we could post it along with a pointer to Xith in a Nutshell as a sticky post in support?
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
Marvin Fröhlich
Xith Lord
Administrator
Guru
*****
Offline Offline

Posts: 4337


May the 4th, be with you...


View Profile
« Reply #3 on: 22. March 2010, 12:26:11 PM »

Marvin, what do you think about including xith as a lib in the xith-tk tests so newbies have an easier time getting up and running?

That might be a minor improvement for very fresh newbies, but wouldn't make me happy for mid and long term. It is much easier to work with and understand the projects when they are linked like they are now.

On the other hand I have to admit, that other people should have to say more in the project, since my time for the project has become less than in the past. So I would simply leave this decision to you.

Also, I think I remember a test runner JNLP from somewhere.  For the life of me, I cannot remember where it is.  Perhaps we could post it along with a pointer to Xith in a Nutshell as a sticky post in support?

That would be great. And please do it when you find it. I tend to never find anything through a forum search. And this time is not an exception from that rule.

Marvin
Logged
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #4 on: 23. March 2010, 12:37:11 PM »

That might be a minor improvement for very fresh newbies, but wouldn't make me happy for mid and long term. It is much easier to work with and understand the projects when they are linked like they are now.

I don't have a particularly strong opinion either way.  To me, the important thing is that new people be able to download, hit run, and see something within 15 minutes using only a command line.

We could add README.txt at the root of all projects and ant run targets because ant works much better across OSs.  I see that we have added build.xml specifically for NetBeans.  We should probably put commands intended for command line usage in a separate build-command-line.xml with a run note in the README.txt.

The two reasons I say that we could use these things
  • When I joined several years ago, it took way more than 15 minutes to get going.  (Things are MUCH easier now.)
  • I still see several places where newbies could stumble.  Leaving a very specific trail of breadcrumbs in a common scripting language such as ANT answers many forum questions before they are even posted.

That would be great. And please do it when you find it. I tend to never find anything through a forum search. And this time is not an exception from that rule.

It turns out that it wasn't on the forum at all.  Apparently, my memory referred to demos that are no longer on the web site.

In
Quote
I found references to
Quote
neither of which exists any more.  IIRC, when I had seen a link, it was buried on a page that was obviously unmaintained by the time I joined the project.  I'm sure it has been removed completely.
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
Marvin Fröhlich
Xith Lord
Administrator
Guru
*****
Offline Offline

Posts: 4337


May the 4th, be with you...


View Profile
« Reply #5 on: 23. March 2010, 05:04:09 PM »

I thought there was an ANT script independently from netbeans isn't there? Unfortunately I can't be of much help here because I still haven't used ANT more than Michael told me "run ANT with the script being there".

Marvin
Logged
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #6 on: 24. March 2010, 01:26:06 AM »

I thought there was an ANT script independently from netbeans isn't there? Unfortunately I can't be of much help here because I still haven't used ANT more than Michael told me "run ANT with the script being there".

Nope, just one ANT script in the root directory: build.xml.  This script then calls nbproject/build-impl.xml.  nbproject/build-impl.xml is NetBeans generated code that should never be modified.  It then calls several pre-defined routines in build.xml for project extensions.

Taking a really quick look at the other files in the directory, it does seem to be well implemented; i.e., I see
Code:
nbproject/configs/GLSLShadowMappingTest.properties
nbproject/configs/L3DTTest.properties
nbproject/configs/LazyLoadableTest.properties
nbproject/configs/TerrainTest4.properties
nbproject/configs/TerrainTest5.properties
nbproject/configs/TextureLeakTest.properties

nbproject/nblibraries-private-linux.properties
nbproject/nblibraries-private-macosx.properties
nbproject/nblibraries.properties

Seeing that it is actually well implemented, a first step would be to just write a quick README.txt that says download java, download ant, check out project, run this ant command.

Many people find the NetBeans build setup confusing.  In truth it can be when misused; however, it actually is decent once you climb the learning curve.

To reiterate my previous point, our goal should be
  • Easy to run the very first time; i.e., README.txt gives a copy/paste command that always works on all supported platforms
  • A straightforward script so a newbie can break it apart for their own project and understand why they placed things in various places; i.e., they should be able to self-teach rather than wait for a forum response

A simple readme should allow us to satisfy goal 1.  We need to simplify the script to meet goal 2.

By meeting goal 1, I believe we would gain a % of users who quickly give up before they even see the project.  By meeting goal 2, I believe we would keep a % of users who give up before they realize the huge benefits of everything here.
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
horati
Global Moderator
Getting respectable
*****
Offline Offline

Posts: 393


View Profile
« Reply #7 on: 24. March 2010, 01:54:47 AM »

In its simplest incarnation, ANT is an extremely simple and useful language that takes about 15 minutes to use at the level of nearly every .bat script I see.

Here are the most important tutorial pages:
Quote

A simple script to run the tests might look like:
Code:
<project name='xith-tk' default='run-test-chooser' basedir='.'>

    <property name='otherproject' value='../xith3d'/>

    <target name='run-test-chooser' depends='compile'>
        <java spawn='true' fork='true' dir='runtime-directory' maxmemory='128m' classname='org.xith3d.test.Xith3DTestLauncher'>
            <jvmarg path='-Djava.libs=path/to/natives'/>
            <classpath>
                <pathelement location='bin'/>
                <pathelement location='${otherproject}/bin'/>
                <fileset dir='lib'>
                    <include name='**/*.jar'/>
                    <exclude name='unit-tests/**'/>
                </fileset>
                <fileset dir='${otherproject}/third-party'>
                    <include name='**/*.jar'/>
                    <exclude name='not-my-os/**'/>
                </fileset>
            </classpath>
        </java>
    </target>

</project>

The script above is not designed for single point of maintenance; i.e., there are occassions where we'll need to make the same change in multiple places in the file.  However, it is designed so that a newbie can easily follow where we put stuff and how they should run it.
Logged

Kevin
"It may not seem like a big deal, but ignorance of character encoding issues leads to insidious code rot akin to y2k."
http://stackoverflow.com/users/3474/sylvarking
Pages: [1]
Print
Jump to:  

Theme orange-lt created by panic