forked from bartvdbraak/blender
142 lines
4.2 KiB
HTML
142 lines
4.2 KiB
HTML
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
||
|
<html>
|
||
|
<head>
|
||
|
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
|
||
|
<style type="text/css">
|
||
|
|
||
|
h1.title {
|
||
|
text-align: center;
|
||
|
}
|
||
|
|
||
|
p.author {
|
||
|
text-align: center;
|
||
|
}
|
||
|
|
||
|
p.note {
|
||
|
background-color: #ffeeee;
|
||
|
margin-left: 5em;
|
||
|
margin-right: 5em;
|
||
|
border-style: solid;
|
||
|
border-color: black;
|
||
|
border-width: thin;
|
||
|
}
|
||
|
|
||
|
pre.shell {
|
||
|
background-color: #ddddff;
|
||
|
border-color: black;
|
||
|
padding: .5em;
|
||
|
border-style: solid;
|
||
|
border-color: black;
|
||
|
border-width: thin;
|
||
|
}
|
||
|
|
||
|
ul.variables {
|
||
|
list-style: none;
|
||
|
font-family: monospace;
|
||
|
}
|
||
|
|
||
|
</style>
|
||
|
</head>
|
||
|
|
||
|
<body>
|
||
|
<h1 class="title">Verse</h1>
|
||
|
|
||
|
<p>
|
||
|
This is the Verse protocol and sample server implementations.
|
||
|
</p>
|
||
|
<p>
|
||
|
For more information, see <a href="http://verse.blender.org/">the Verse web site</a>.
|
||
|
</p>
|
||
|
<h1>Building the Verse Core</h1>
|
||
|
<p class="note">
|
||
|
Note: This section is only of interest to developers, who wish to build the Verse core themselves.
|
||
|
If you have chosen a binary download, you will already have the server and can skip the rest
|
||
|
of this section.
|
||
|
</p>
|
||
|
<p>
|
||
|
Running "make" here will build the API library, "libverse.a" (and its
|
||
|
header file, "verse.h"). These two will then be used to build the
|
||
|
reference Verse server binary, called "verse".
|
||
|
</p>
|
||
|
|
||
|
<h1>Starting the Server</h1>
|
||
|
<p>
|
||
|
The Verse server is a command-line program, without a graphical user interface.
|
||
|
You simply start it, and it will immediately begin listening for incoming
|
||
|
connections on a network socket. Here is how a typical invocation looks:
|
||
|
</p>
|
||
|
<pre class="shell">~> verse
|
||
|
</pre>
|
||
|
<p>
|
||
|
If you don't ask it to do otherwise, the Verse server will start listening for UDP packets
|
||
|
on its default port. The port number currently used by Verse is 4950.
|
||
|
</p>
|
||
|
<p class="note">
|
||
|
Note: This is not an official <a href="http://www.iana.org/">registered</a>, port number.
|
||
|
It is possible that it gets assigned to someone else, in case Verse will need to change.
|
||
|
</p>
|
||
|
<p>
|
||
|
You can use the following command line options to control the server's operation:
|
||
|
</p>
|
||
|
<dl>
|
||
|
<dt>-port=N</dt>
|
||
|
<dd>
|
||
|
Use the indicated port number, rather than the default.
|
||
|
</dd>
|
||
|
<dt>-master=IP</dt>
|
||
|
<dd>
|
||
|
Connect to a <a href="http://verse.blender.org/cms/Master_Server.713.0.html">master server</a> at address <i>IP</i>.
|
||
|
</dd>
|
||
|
<dt>-Q</dt>
|
||
|
<dd>
|
||
|
Don't register with a <a href="http://verse.blender.org/cms/Master_Server.713.0.html">master server</a>.
|
||
|
This is currently the default, as master server operation has not been widely used.
|
||
|
</dd>
|
||
|
<dt>-version</dt>
|
||
|
<dd>
|
||
|
Prints the version string of the server to the terminal, and then exits (successfully). See
|
||
|
<a href="#rellab">below</a> for information how the version string is constructed.
|
||
|
</dd>
|
||
|
</dl>
|
||
|
<p>
|
||
|
For example, here is how to start the server, with a master server of <code>master.example.org</code>,
|
||
|
and a port number equal to 16333:
|
||
|
</p>
|
||
|
<pre class="shell">~> ./server -master=master.example.org -port=16333
|
||
|
</pre>
|
||
|
<p>
|
||
|
Options can occur in any order, with later options overriding earlier ones, in case of conflicts.
|
||
|
</p>
|
||
|
|
||
|
<h1><a name="rellab">Release Labeling</a></h1>
|
||
|
<p>
|
||
|
Verse uses a simple two-level numbering scheme to identify releases.
|
||
|
There is a "release number", and a "patch level" on each release. The
|
||
|
intent is that within a release, the API does not change and neither
|
||
|
should the network protocol. Between releases, we might improve the
|
||
|
API which will require application programmers to update their code
|
||
|
to stay in sync. We can do non-API-altering changes within a release
|
||
|
by increasing the patch level, for bug fixing and other things.
|
||
|
</p>
|
||
|
<p>
|
||
|
The symbols <code>V_RELEASE_NUMBER</code> and <code>V_RELEASE_PATCH</code>
|
||
|
are integer literals that hold the values for the API you have, and can be
|
||
|
used (and displayed) in application source code as you see fit. There is
|
||
|
also a string, <code>V_RELEASE_LABEL</code>, which is sometimes used.
|
||
|
</p>
|
||
|
<p>
|
||
|
To form a complete Verse version number, the above-mentioned symbols are
|
||
|
to be combined like so:
|
||
|
"r<i><code><V_RELEASE_NUMBER></code></i>p<i><code><V_RELEASE_PATCH><V_RELEASE_LABEL></code></i>".
|
||
|
So, the following variable values:
|
||
|
<ul class="variables">
|
||
|
<li>V_RELEASE_VERSION = 2
|
||
|
<li>V_RELEASE_VERSION = 51
|
||
|
<li>V_RELEASE_LABEL = "foo"
|
||
|
</ul>
|
||
|
Would generate the version string "<code>r2p51foo</code>".
|
||
|
</p>
|
||
|
|
||
|
</body>
|
||
|
</html>
|