Perspective Virtual Camera library issue

Hello all I am currently developing an application that I am going to use the perspective library with. I have imported the library and have written the correct code it seems but to no avail my camera is not working properly. I am attempting to get the camera to follow the main character you are moving around with the buttons. I added him and the background and a “tree” to the camera and set him as the focus but it still will not follow him. Here is my code please tell me what I have done wrong here and how to fix it.

[lua]

local storyboard = require( “storyboard” )

local scene = storyboard.newScene()

local perspective = require( “perspective” )

local camera = perspective.createView()

local physics = require( “physics” )

–physics.setDrawMode( “hybrid” )

local function start( event )

if( event.phase == “ended” ) then

end

end

local bg

local floor

local leftwall

local rightwall

local player  

local button1

local button2

local pausebtn

local tree

local function b1( event )

if( event.phase == “ended” ) then

player:applyLinearImpulse( -.01, -.1 )

end

end

local function b2( event )

if( event.phase == “ended” ) then

player:applyLinearImpulse( .01, -.1 )

end

end

local function playerCollision( event )

if( event.phase == “began” ) then

storyboard.gotoScene( “gameover” )

end

end

local function pause( event )

if( event.phase == “ended” ) then

storyboard.showOverlay( “pause” )

physics.pause()

end

end

function scene:createScene( event )

local group = self.view

    physics.start()

   

   

    

    bg = display.newImage( “bg.png”, display.contentWidth/2, display.contentHeight/2, display.contentWidth, display.contentHeight )

camera:add(bg, 3, false)

    player = display.newImage( “player.png”, display.contentWidth/2, display.contentHeight/2, display.contentWidth, display.contentHeight )

    player.collision = playerCollision  

camera:add(player, 1, true)

    tree = display.newImage( “tree.png”, 200, 200)

camera:add(tree, 2, false)

   

    floor = display.newRect( 285, 375, 570, 1 )

    button1 = display.newImage( “button1.png”, 50, 275 )

    button2 = display.newImage( “button2.png”, 515, 275 )

    

    leftwall = display.newRect( 0, -1000, 1, 5000 )

    rightwall = display.newRect( 570, 300, 1, 5000 )

    

    pausebtn = display.newImage( “pausebtn.png”, 540, 30 )

    

    – Physics

    physics.addBody( player )

    

    physics.addBody( floor ) 

    floor.bodyType = “static”

    

    physics.addBody( rightwall )

    rightwall.bodyType = “static”

    

    physics.addBody( leftwall )

    leftwall.bodyType = “static”

    

    

    

    group:insert(bg)

    group:insert(player)

    group:insert(floor)

    group:insert(button1)

    group:insert(button2)

    group:insert(rightwall)

    group:insert(leftwall)

    group:insert(pausebtn)

    group:insert(tree)

end

function scene:enterScene( event )

print( “game” )

button1:addEventListener( “touch”, b1 )

button2:addEventListener( “touch”, b2 )

player:addEventListener( “collision”, playerCollision )

pausebtn:addEventListener( “touch”, pause )

end

function scene:exitScene()

player = nil

camera:cancel()

end

function scene:destroyScene( event )

end

scene:addEventListener( “createScene”, scene )

scene:addEventListener( “enterScene”, scene )

scene:addEventListener( “exitScene”, scene )

scene:addEventListener( “destroyScene”, scene )

return scene

[/lua]