473,394 Members | 1,750 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,394 software developers and data experts.

Javascript canvas 3d

I've been playing with the canvas primitive available in some of the
modern browsers, and have put together a little 3d engine that I
thought other people might find useful. See

http://ajax3d.sourceforge.net/

I'd appreciate any feedback (and an explanation of why it doesn't seem
to like Safari).

Eben

Mar 1 '07 #1
16 3506
<eb**@podfun.comwrote in message
news:11**********************@z35g2000cwz.googlegr oups.com...
I've been playing with the canvas primitive available in some of the
modern browsers, and have put together a little 3d engine that I
thought other people might find useful. See

http://ajax3d.sourceforge.net/

I'd appreciate any feedback (and an explanation of why it doesn't seem
to like Safari).
It runs so slow on my machine I cannot do anything. The least of which is get a response
from mouse clicks.

1GB RAM, 1.06GHz laptop.

-Lost
Mar 1 '07 #2
"-Lost" <mi*********@comcast.netwrote in message
news:Au******************************@comcast.com. ..
<eb**@podfun.comwrote in message
news:11**********************@z35g2000cwz.googlegr oups.com...
>I've been playing with the canvas primitive available in some of the
modern browsers, and have put together a little 3d engine that I
thought other people might find useful. See

http://ajax3d.sourceforge.net/

I'd appreciate any feedback (and an explanation of why it doesn't seem
to like Safari).

It runs so slow on my machine I cannot do anything. The least of which is get a
response from mouse clicks.

1GB RAM, 1.06GHz laptop.
Sorry, I also forgot to mention Opera 9.10 does nothing when I open the page. I tried it
in the hopes it might run better than Firefox, but...

-Lost
Mar 1 '07 #3
On 1 Mar, 02:19, "-Lost" <missed-s...@comcast.netwrote:
"-Lost" <missed-s...@comcast.netwrote in message

news:Au******************************@comcast.com. ..
<e...@podfun.comwrote in message
news:11**********************@z35g2000cwz.googlegr oups.com...
I've been playing with the canvas primitive available in some of the
modern browsers, and have put together a little 3d engine that I
thought other people might find useful. See
>http://ajax3d.sourceforge.net/
I'd appreciate any feedback (and an explanation of why it doesn't seem
to like Safari).
It runs so slow on my machine I cannot do anything. The least of which is get a
response from mouse clicks.
1GB RAM, 1.06GHz laptop.

Sorry, I also forgot to mention Opera 9.10 does nothing when I open the page. I tried it
in the hopes it might run better than Firefox, but...

-Lost
Hmm. I'd expect it to be pretty slow on a 1.0GHz machine, but I was
able to get it at least marginally playable on an ancient 900MHz
Athlon, so not being able to even get off the pad sounds bad. Which
version of Firefox was this?

Mar 1 '07 #4
<eb**@podfun.comwrote in message
news:11**********************@h3g2000cwc.googlegro ups.com...
On 1 Mar, 02:19, "-Lost" <missed-s...@comcast.netwrote:
>"-Lost" <missed-s...@comcast.netwrote in message

news:Au******************************@comcast.com ...
<e...@podfun.comwrote in message
news:11**********************@z35g2000cwz.googleg roups.com...
I've been playing with the canvas primitive available in some of the
modern browsers, and have put together a little 3d engine that I
thought other people might find useful. See
>>http://ajax3d.sourceforge.net/
>I'd appreciate any feedback (and an explanation of why it doesn't seem
to like Safari).
It runs so slow on my machine I cannot do anything. The least of which is get a
response from mouse clicks.
1GB RAM, 1.06GHz laptop.

Sorry, I also forgot to mention Opera 9.10 does nothing when I open the page. I tried
it
in the hopes it might run better than Firefox, but...
Hmm. I'd expect it to be pretty slow on a 1.0GHz machine, but I was
able to get it at least marginally playable on an ancient 900MHz
Athlon, so not being able to even get off the pad sounds bad. Which
version of Firefox was this?
Firefox 1.5.0.9 (I do not like Firefox 2.0 enough yet to switch).

OK, the pad, I wondered what that was. The only thing I saw was when I clicked (cannot
remember which it was, left or right) the thing (I assume a ship) on the pad exploded into
several pieces and nothing else would happen. Well, except for more ships flying around
and the radar updating.

-Lost
Mar 2 '07 #5
ASM
-Lost a écrit :
<eb**@podfun.comwrote
>Hmm. I'd expect it to be pretty slow on a 1.0GHz machine,
If your demo needs a 4Ghz ... not realist
If this canvas3d runs with Ajax you're dependent of
- connexion speed
- server answers
>but I was
able to get it at least marginally playable on an ancient 900MHz
Athlon, so not being able to even get off the pad sounds bad. Which
version of Firefox was this?
ben ... comme truc nul c'est nul !

What is the goal of this demo ?
I saw a red bar to progress
then a green bar emptying ...
What are they ? mystere !

Moving the mouse seems to do smth ... few seconds latter
(or perhaps the game is playing alone ? )
(never I'l know, nothing to indicate whatever it is)

For instance I've moved mouse down and the map (pad?) went down away
from the viewer then I've crawled up and longtime after stopping the map
came back to scratch the poor spoutnick lost there.

Once again I understand anything of what I am supposed to do ...
Left and right buttons do nothing
(or perhaps they do few seconds latter ? I can't judge)

Mac G4 1.25Mhz - VideoCard with OPenGL 64Mo - system 10.3.9 - FF 2.0.2
DSL 512Mbits/s
Firefox 1.5.0.9 (I do not like Firefox 2.0 enough yet to switch).
Il est très bien ce FF2 (guère diférent du 1.5 de mon point de vue)
OK, the pad, I wondered what that was. The only thing I saw was when I clicked (cannot
remember which it was, left or right) the thing (I assume a ship) on the pad exploded into
several pieces and nothing else would happen. Well, except for more ships flying around
and the radar updating.
keskecé que ça le "radar" ?
Something very strange :
- canvas3d is left as is in its window
- I open a new tab
- my FF is very slow (my connexion is falling down ?)
- closing the canvas3d tab gives me back my FF working correctly

What was running in loop in this canvas3d that pushes my FF to sleep ?

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé
Stephane Moriaux and his (less) old Mac already out of date
Mar 2 '07 #6
"ASM" <st*********************@wanadoo.fr.invalidwrote in message
news:45**********************@news.orange.fr...
-Lost a écrit :
><eb**@podfun.comwrote
>>Hmm. I'd expect it to be pretty slow on a 1.0GHz machine,

If your demo needs a 4Ghz ... not realist
If this canvas3d runs with Ajax you're dependent of
- connexion speed
- server answers
I wholeheartedly agree. The same holds true for Flash applications. If your JavaScript
or ActionScript application requires a consumer super-computer, you lose a *WIDE* range of
audience.
>>but I was
able to get it at least marginally playable on an ancient 900MHz
Athlon, so not being able to even get off the pad sounds bad. Which
version of Firefox was this?

ben ... comme truc nul c'est nul !
I agree again. It is a moot point. I cannot view it on a reasonably fast machine
(comparably I imagine).
What is the goal of this demo ?
I saw a red bar to progress
then a green bar emptying ...
What are they ? mystere !
I wondered the same thing. I tried playing it again, but:

The left mouse button makes the ship fly upward *and* in the general direction of the
cursor. Not good in my opinion.

Right clicking is the most useless thing ever. It appears it only shoots in the direction
of the momentum of the ship.
Moving the mouse seems to do smth ... few seconds latter
(or perhaps the game is playing alone ? )
(never I'l know, nothing to indicate whatever it is)
Yep. Again, what is it doing? The ships fly past me doing nothing. The only time I have
"died" is when I allowed the ship to fall back to the "pad." After which the other ships
continue to fly around shooting at nothing.
For instance I've moved mouse down and the map (pad?) went down away from the viewer
then I've crawled up and longtime after stopping the map came back to scratch the poor
spoutnick lost there.

Once again I understand anything of what I am supposed to do ...
Left and right buttons do nothing
(or perhaps they do few seconds latter ? I can't judge)

Mac G4 1.25Mhz - VideoCard with OPenGL 64Mo - system 10.3.9 - FF 2.0.2
DSL 512Mbits/s
>Firefox 1.5.0.9 (I do not like Firefox 2.0 enough yet to switch).

Il est très bien ce FF2 (guère diférent du 1.5 de mon point de vue)
The main things that I did not like were built-in spellcheck (it broke SpellBound). Also,
*several* extensions that I have become accustomed to were not usable in Firefox 2.0.
Same with a couple themes (which that does not matter, as I rarely use them). I only
became aware of themes not being compatible when it told me about them.
>OK, the pad, I wondered what that was. The only thing I saw was when I clicked (cannot
remember which it was, left or right) the thing (I assume a ship) on the pad exploded
into several pieces and nothing else would happen. Well, except for more ships flying
around and the radar updating.

keskecé que ça le "radar" ?
I did not understand this, what is "keskecé"?
Something very strange :
- canvas3d is left as is in its window
- I open a new tab
- my FF is very slow (my connexion is falling down ?)
- closing the canvas3d tab gives me back my FF working correctly

What was running in loop in this canvas3d that pushes my FF to sleep ?
I would like to know this too. With this "demo" open my entire browser became sluggish
and pushed CPU usage through the roof.

That is a pointless example in my opinion.

Granted, I would love to see it working and more responsive. I love seeing JavaScript
pushed to the limits, especially concerning 3D.

-Lost
Mar 2 '07 #7
On Mar 1, 7:16 pm, "-Lost" <missed-s...@comcast.netwrote:
"ASM" <stephanemoriaux.NoAd...@wanadoo.fr.invalidwrote in message
keskecé que ça le "radar" ?

I did not understand this, what is "keskecé"?
read: qu'est-ce que c'est?
What was running in loop in this canvas3d that pushes my FF to sleep ?

I would like to know this too. With this "demo" open my entire browser became sluggish
and pushed CPU usage through the roof.

That is a pointless example in my opinion.
This is a great example, in my opinion. I don't think the canvas tab
was ever designed to handle this sort of load, so I'm impressed to see
someone trying. Obviously it's not suitable for the world, but as a
proof-of-concept it's a great start. I suppose, however, if you judge
it against standalone video games, it's got a long way to go. But
judge it against what you've ever seen before running natively in your
browser, and it's pretty amazing.

-David

Mar 2 '07 #8
"David Golightly" <da******@gmail.comwrote in message
news:11**********************@z35g2000cwz.googlegr oups.com...
On Mar 1, 7:16 pm, "-Lost" <missed-s...@comcast.netwrote:
"ASM" <stephanemoriaux.NoAd...@wanadoo.fr.invalidwrote in message
keskecé que ça le "radar" ?

I did not understand this, what is "keskecé"?
read: qu'est-ce que c'est?
Gotcha.

ASM:

The radar in the top right, kind of like the map, is what I was referring to.
What was running in loop in this canvas3d that pushes my FF to sleep ?

I would like to know this too. With this "demo" open my entire browser became sluggish
and pushed CPU usage through the roof.

That is a pointless example in my opinion.
This is a great example, in my opinion. I don't think the canvas tab
was ever designed to handle this sort of load, so I'm impressed to see
someone trying. Obviously it's not suitable for the world, but as a
proof-of-concept it's a great start. I suppose, however, if you judge
it against standalone video games, it's got a long way to go. But
judge it against what you've ever seen before running natively in your
browser, and it's pretty amazing.
Well, I agree. I meant it was pointless if no one can view it. Or if the majority of
users would experience their browser becoming sluggish, et cetera.

Otherwise, I would love to see this working. Pushing the limits with JavaScript is what I
*love* to see. Zorn and Whittle started that show, I have not seen many other 3D or
graphics-type applications since them.

NOTE: No clue why my newsreader choked and did not put proper >'s. I actually had to put
them there myself, so they may not be accurate (depth-wise).

-Lost
Mar 2 '07 #9
ASM
Special answer to Lost (not found private address)

-Lost a écrit :
"ASM" <st*********************@wanadoo.fr.invalidwrote in message
news:45**********************@news.orange.fr...
>>
Il est très bien ce FF2 (guère diférent du 1.5 de mon point de vue)

The main things that I did not like were built-in spellcheck (it broke SpellBound).
That is not an option ? I never installed its dictionnary.
(don't know what that serves)
*several* extensions that I have become accustomed to were not usable in Firefox 2.0.
Which ones ?
For some of them you just need to unzip the trick and change one line in
the *.js (passing from 1.5 to 2)
Same with a couple themes (which that does not matter, as I rarely use them).
I used the brushed, now I do not more (too close Safari appearance).
I did not understand this, what is "keskecé"?
phonetic = qu'est-ce que c'est = what is it

I don't know why but I thought your mother language was french ...

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé
Stephane Moriaux and his (less) old Mac already out of date
Mar 2 '07 #10
ASM
-Lost a écrit :
>
With this "demo" open my entire browser became sluggish
and pushed CPU usage through the roof.

That is a pointless example in my opinion.

Granted, I would love to see it working and more responsive. I love seeing JavaScript
pushed to the limits, especially concerning 3D.
I would be very interested too but certainly not about a game
(something like VRML : realist world with textures where I could walk
and fly )

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé
Stephane Moriaux and his (less) old Mac already out of date
Mar 2 '07 #11
ASM
David Golightly a écrit :
>
But
judge it against what you've ever seen before running natively in your
browser,
As nothing seems to work ... I'm very disappointed
and it's pretty amazing.
Perhaps a game was not the best to show me its advantages ?
I'll wait some more/other examples.

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé
Stephane Moriaux and his (less) old Mac already out of date
Mar 2 '07 #12
On Mar 1, 2:09 am, e...@podfun.com wrote:
I've been playing with the canvas primitive available in some of the
modern browsers, and have put together a little 3d engine that I
thought other people might find useful. See

http://ajax3d.sourceforge.net/

I'd appreciate any feedback (and an explanation of why it doesn't seem
to like Safari).

Eben
Whoa! i really like this one.. it remembers me an old PASCAL+ASM
program i made a lot of years ago (it was a sort of landscape
generator [no spaceships]), when i was a smiling-dreamful boy ... :)

I can say it is running OK (with lots of frames per second) on my
machine (Firefox 2.0.0.2 - Windows XP -Pentium 4 3GHz - 1GB Ram)

I don't like so much the control system tough.. i think you should use
keyboard events.. (or a mix of mouse and keyboard)
It is possible to scroll the map? How you move around?

I really like people like you doing this kind of weird/really-hard
things on a web browser, so I would like to have your opinion (and of
course i would like to hear comments from anyone that is interested)
on a project i am working on my spare time.. it is called Primera.
It's still on alpha but it works.

http://primera.sebastian.it

It runs on Firefox only (tested on FF v1.5, FF v2.0 and FF v2.0.0.2)
and it has been tested on windows xp (i think it can run on others
Operating Systems too)
I am not using canvas.. but i think the project is interesting since
I've developed a nice isometric engine (in addition there is a sort of
'multiplayer' engine so you can see what other people is doing)

Only a few people knows about this project so you won't find anyone
around the map.
It is the first time that someone from the 'outside world' is testing
it so please be kind :)
I've tried to do my best with the iso-engine (to speed it up) but i
must admit that you need a good PC to run Primera with a decent frame
rate.

OK, it's all for now.
Ciao,
Seba

Mar 2 '07 #13
ASM
g4toloc0 a écrit :
>
http://primera.sebastian.it

It runs on Firefox only (tested on FF v1.5, FF v2.0 and FF v2.0.0.2)
and it has been tested on windows xp (i think it can run on others
Operating Systems too)
I'd wait much more than 1 minute end of loading

Something wrong in the page :
- no scroll bars
- page continues down out of the window and I can't read it.
- page bigger than my window I can't see icones nor click them.

and ... what is the demo login ?

still waiting to enter
(why would I have to create a new account to see a demo ?)

that's done : demo demo

It is beautiful but in 2D, no?.
like this one :
http://sourceforge.net/projects/ajaxrpg/
(not found the demo seen at another url seeming closed)

Little problem : the avatar don't stop as soon as I stop to press my
mouse button.
Gasp ! I don't need to press the button !
only over the world and wait arrow :
same problem as above, twice (1 to start, 1 to stop)
Nothing to :
- accelerate deplacement
- see entire world
Avatar can't reach edge of world.
Not understood what to do with command console
Ha! it's blocked ...

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé
Stephane Moriaux and his (less) old Mac already out of date
Mar 2 '07 #14
On 2 Mar, 10:34, "g4toloc0" <seba.gatol...@gmail.comwrote:
On Mar 1, 2:09 am, e...@podfun.com wrote:
I've been playing with the canvas primitive available in some of the
modern browsers, and have put together a little 3d engine that I
thought other people might find useful. See
http://ajax3d.sourceforge.net/
I'd appreciate any feedback (and an explanation of why it doesn't seem
to like Safari).
Eben

Whoa! i really like this one.. it remembers me an old PASCAL+ASM
program i made a lot of years ago (it was a sort of landscape
generator [no spaceships]), when i was a smiling-dreamful boy ... :)

I can say it is running OK (with lots of frames per second) on my
machine (Firefox 2.0.0.2 - Windows XP -Pentium 4 3GHz - 1GB Ram)

I don't like so much the control system tough.. i think you should use
keyboard events.. (or a mix of mouse and keyboard)
It is possible to scroll the map? How you move around?

I really like people like you doing this kind of weird/really-hard
things on a web browser, so I would like to have your opinion (and of
course i would like to hear comments from anyone that is interested)
on a project i am working on my spare time.. it is called Primera.
It's still on alpha but it works.

http://primera.sebastian.it

It runs on Firefox only (tested on FF v1.5, FF v2.0 and FF v2.0.0.2)
and it has been tested on windows xp (i think it can run on others
Operating Systems too)
I am not using canvas.. but i think the project is interesting since
I've developed a nice isometric engine (in addition there is a sort of
'multiplayer' engine so you can see what other people is doing)

Only a few people knows about this project so you won't find anyone
around the map.
It is the first time that someone from the 'outside world' is testing
it so please be kind :)
I've tried to do my best with the iso-engine (to speed it up) but i
must admit that you need a good PC to run Primera with a decent frame
rate.

OK, it's all for now.
Ciao,
Seba
Wow. That's neat. Amazing what you can do with a whole lot of divs.
I've often wondered if you could do a decent game using Google Maps-
style scrolling, so now I know. It ran nice and fast on my machine at
work (1.7GHz Core Duo laptop). I'll keep an eye on the project as it
progresses. Hopefully one day Microsoft will get round to implementing
canvas in IE and all this stuff will become much easier.

I'm glad you enjoyed my little game. Sorry the controls are rather
sensitive; if you want to see a really hard to control game of this
sort I suggest you download a copy of Virus for the Amiga from
somewhere. It's the same sort of thing, but with incredibly sensitive
mouse controls and the ability to turn the ship upside down (!!).

Mar 2 '07 #15
>Hmm. I'd expect it to be pretty slow on a 1.0GHz machine,
>
If your demo needs a 4Ghz ... not realist
If this canvas3d runs with Ajax you're dependent of
- connexion speed
- server answers

I wholeheartedly agree. The same holds true for Flash applications. If your JavaScript
or ActionScript application requires a consumer super-computer, you lose a *WIDE* range of
audience.
It certainly doesn't need a 4GHz machine. I developed it on an 18-
month old 1.4GHz Thinkpad, where it's pretty solidly playable, and
have played it a bit on my Core 2 Duo E6400 desktop. Neither of these
is an entry level Dell box, but neither are they 'consumer
supercomputers'. I think there may be some PowerPC Mac related
performance troubles, but unfortunately it's getting hard to find one
to debug on :( I know that performance is okay on current Intel
MacBooks.

Anyway, just a bit of fun. I remember writing the same thing in Java
in about 1998; talk about progress....

Mar 2 '07 #16
ASM
eb**@podfun.com a écrit :
>
It certainly doesn't need a 4GHz machine. I developed it on an 18-
month old 1.4GHz Thinkpad, where it's pretty solidly playable, and
have played it a bit on my Core 2 Duo E6400 desktop. Neither of these
is an entry level Dell box, but neither are they 'consumer
supercomputers'. I think there may be some PowerPC Mac related
performance troubles, but unfortunately it's getting hard to find one
to debug on :( I know that performance is okay on current Intel
MacBooks.
something running better on intel processors ?
Anyway, just a bit of fun. I remember writing the same thing in Java
in about 1998; talk about progress....
No thanks, no Java please.

on Sourceforge I'd find no demo
And when I tried, your site .it did not answer.

Is their any other example in 3d than a game ?

--
Stephane Moriaux et son (moins) vieux Mac déjà dépassé
Stephane Moriaux and his (less) old Mac already out of date
Mar 2 '07 #17

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
by: Mickel Grönroos | last post by:
Hi, I'm trying to put an Tkinter.Entry of fixed size onto a specific location on a canvas using the place manager. The idea is that one can double-click a rectangle object on a canvas to get an...
2
by: HeroOfSpielburg | last post by:
Hello, I was looking for a general group to post this in, so I could do a compare/contrast of possible implementations, but unfortunately I'm really a newbie and don't even know what my options...
2
TMS
by: TMS | last post by:
Schools over!!! Now its time to play. I would like to learn how to make objects move from one location to the next on a canvas widget. For example: from Tkinter import * class square:...
2
by: aaronwmail-usenet | last post by:
ANN: SkimpyGimpy PNG canvas has Javascript mouse tracking The SkimpyGimpy PNG image canvas now can generate Javascript data structures which allow HTML pages to intelligently respond to mouse...
6
by: Nebulism | last post by:
I have been attempting to utilize a draw command script that loads a canvas, and through certain mouse events, draws rectangles. The original code is from...
2
by: devnew | last post by:
hi i am new to tkinter and would like some help with canvas i am doing validation of contents of a folder and need to show the ok/error messages on a canvas resultdisplay =Canvas(...)...
15
by: javelin | last post by:
I need to be able to create a javascript based drawing/signature box, and be able to save it. Can someone refer me to a script that will allow this, or even a 3rd party package for sale? It can't...
4
by: moondaddy | last post by:
I have a wpf project where I use a canvas to drag shapes around. when I drag a shape beyond the right or bottom side I get scrollbars which is good. I also get scrollbars when I zoom in and a...
28
by: macca | last post by:
Hi, I'm developing an application that is going to be used in schools as a teaching aid and require the ability to temporarily draw on my (as in pages produced by my application) web page using...
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.